game: make scene locking more robust

* Apply changes after each component manager update
* Don't traverse all object tree each update, mark changed
  objects as pending and only traverse them
game: fixed some const stuff
game: implementing collision responses

just starting collision response implementation.
also added shared_from_this stuff to ease object
removal