Adding graceful failure for image load failure in GUI

Currently, if the RML or RCSS for a piece of the UI specify a bad image path, the Texture constructor throws and the program just dies. Fixed this by adding a "valid" flag for the texture to help indicate if it was successfully constructed. Our Rocket RenderInterface will do the right thing and clean up the texture, plus notify Rocket that the image load failed. The result is that bad image paths result in white quads instead of crashing the game. Far nicer, I think. :)
Player character no longer walks in place when walking into a wall

Changing the EntityGrid to return a success flag for MoveToClosestPoint. If no movement occurs, then the function returns false. The PlayerCharacter class reacts to this by switching to the standing sprite instead of keeping the walking animation.
Adding Item Icons and Item Shortcut Bar

===Item Icons===
Added icon support to items and, while doing so, added a series of icons from OpenGameArt.org by an artist named Ails. The Item Menu has been updated to show icons, and the shortcut bar will show these same items. The Item metadata has also been appropriately updated, and the parser now loads in Icon paths for each item.

While updating the item menu, also added graceful failure for unknown item IDs. They will show up in the item menu with a Rock icon, as well as a name with the structure "Unknown {ID}". This way, items with bad IDs can be persisted in the player's inventory until their metadata is fixed up. This is preferable to the alternative of filtering out these items, which could lead to data loss if the metadata gets messed up in some way, even briefly.

===Shortcut Bar===
Adding the GUI for a shortcut bar that contains 10 items that a user can set as hotkeys. The bar shows item icons and item quantities.
Added a z-index to the dialogue box to ensure that speech isn't blocked by the new shortcut bar.
Added shortcut data to the savegames, and updated parsing and serializing of the PlayerData appropriately.

Since the Menu Shell now instantiates a shortcut bar, we need to pass PlayerData through the three Menus. In the future, this should be part of the GameContext.

===Small fixes===
Fixing a small bug where double-buffering is disabled. I had it turned off for debugging a long time ago, and it's been off ever since, which made Screenshot Saturday an interesting challenge. :/

Changing map offsets in TileEngine to be a Point2D instead of 2 ints, for consistency.

Updated the NPC scripts: NPC 1 now gives a Potion again (rather than item 0) and NPC 2 doesn't walk in place while talking. NPC 2 also doesn't talk as much after the
 carryAConvo quest is completed, and will actually walk away from the player without paying them any attention.

Fixed a warning in EquipData.cpp, where a vector was initialized with NULL size (was previously a C-style array).