Did most of the refactoring expect for CollisionSystem