Some initial ideas for how to redo game objects
Merge branch 'master' into GameState
New game state idea

Split the game state from the wires. Each frame, a game state is generated from the wires
and this state is then passed as a reader monad during the next frame. We also changed
game objects to be a transform along with a set of components. The currently available
components are a render object and a bounding volume. Eventually we would like the components
to be user-defined, but this probably isn't too much of a problem.

Also, there's a bit too much logic in UI/Lambency.hs... this should probably change.
Change game to be a static state plus a bunch of game wires
Make sure that the whole game state is available during each timestep
Add some more game types
Set swap interval to 1 to force refresh prior to buffer update. This might not work on all platforms...
Fix consistency with step function
Decouple simulation and rendering steps.

This is done via the second to last entry in the popular "Fix your timestep" article
located here:

http://gafferongames.com/game-physics/fix-your-timestep/
Refactor decoupled timestep
Some more refactoring
Bump up speeds to match normalized timestep
Merge master into new game state