More improvements to code structure. All updating and drawing of gameobjects and special objects is managed in a stage object.