Changed the way Tileset returns Tile objects.
Removed unneeded typedefs.
Modified the way Map stored its tiles, using Tileset's use of share_ptr for Tile objects.