The game monad is now a transformer.

The eventLoop function is somewhat tidied up by this change, but would still
benefit from embedding the Game itself in the monad, as well as remembering the
SDL surface for all passes.