Start using delegates
Start from initial state
Rename State -> GameState
Update state method names
Convenience super method
Remove CanGroup and CanHaveParent
Rename pushRenderCommands -> generateRenderCommands
generateRenderCommands now returns a list of render commands
Refactor a whole bunch of shit
TreeIteratorDelegate
Renderable now only takes one renderable element
Breaking some shit
Fix sprite anchor point
Fix stuff and clean up