Completed all levels
Added comments and extracted method GameObjectState.getDesiredVelocity