Made some minor changes
Reworked CView to use IDrawAble and directly draw instead of going through the CGameFrame to check each CID.
Deleted the getKeyCode() method (use getValue() intead)
Fixed Imports
CKeys is now no longer static-based and instead CGameFrame-based (you have to call the new method in CGameFrame to get the instance instead of using the methods statically).
Implemented new CKeys interface. CGameFrame now has method getKeys() to return the CKeys instance.
Changed "CKeys." to "getKeys()." in CMovingBallTest and "CKeys." to "keys." in CGameFrame.
Incorporated Lambdas expressions and consolidated ArrayList construction.
Fixed some spelling
Moved the reference to the CGameFrame from CObjectDrawAble to CObject
Incorporated tick methods in IDrawAble and updated the other classes with the new framework.
Removed the drawBefore and drawAfter methods in IDrawAble
Moved the reference to the CGameFrame object down to the CObject class.
Implemented tick method
Revised and made more intuitive the ticking system.
Moved the tick calls to the updateAll method and seperated the updaters into the tickBefore, tick, and tickAfter methods with the objects to be updated.
Put variables at the top.
Put the updaters' tick methods in the tickBefore(), tick(), and tickAfter() methods instead of in the updateAll().  They are still called in the same order.
Removed references to drawBefore(Graphics)
Renamed method update() to updateOverlayToggle(), still a private method though.
Fixed imports
Implemented empty methods for new methods in IDrawAble such as tick and needDraw().  NOTE: needDraw() replaced the functionality of needUpdate() as needUpdate() now returns false.
Fixed reference to needUpdate() in an IDrawAble object to needDraw()
Fixed imports
Made it CGameFrame specific instead of static.