Unsubscribe the existing controller before resetting it
Stop controlling objects as soon as the session ends, the objects themselves will be cleaned up after the timer expires
Moved player related handling to the player service which now listens for the appropriate ControllerConnectionClosed event
Explicitly stop controlling the object before dispatching the ControllerConnectionClosed event
When clearing the controller unsubscribe it from all aware objects
Added method to stop controlling an object by it's id