decided on asset foundation
make some functions final
Separate GameState functionality to subclass.

Move MVC functionality to core.MVCState.
Add Asset functionality to core.GameState.