add remember movie history to playback next time and refactor providers to Singleton