Added media implementation classes. Refactored Media into an interface. Renamed InteractionManager.