game: refactoring to use component model

This isn't finished yet, TODO:
* register ComponentManagers with scene, use them to update components
* replace std::list<ComponentPtr>, std::list<SceneObjectPtr> with std::set, remove
  ugly XXXCookie thing, it's not needed
* move all existing logic to appropriate components