ImagePool and Loading Levels in Level Editor

The images are now pooled in an image resource pool. This should
dramatically lower load times for the game as well as improve the level
runtime. It basically passes around a reference to a single image after
it's been loaded instead of loading the file many times.

The loading of levels (parsing XML and building objects from) has been
refactored into its own class, LevelLoader and is now utilized in both
the LevelScene and GameLevelMaker classes. This gives level loading
functionality to the level editor.

Scenes are now abstract classes, and the Player now loses fuel in
proportion to the gravity of the level.

Levels all now have Music as a parameter both when loading the file as
well as when writing the file.

Some small improvements and enhancements in how things are rendered and
when things are loaded as well.