Split main app and MoviePlayer module, add features, keep the client player state updated