- Reorder onEnd callback before play() in Engine.goToScene to prevent
missed ended event if video ends synchronously
- Wait for loadedmetadata event in VideoManager.play() before seeking
to ensure currentTime reset works correctly on new video sources