Add Tile, Map.getTileByGID, and some tests.
Some simple prototyping.
Some additional tests.
Associate layers and tilesets with their parent map.
Parse tileWidth and tileHeight into Map object.
Refactor parser tests to load test.tmx.

We have to use dart:io in these tests anyway.
Add emptyTile constructor.
A GID of 0 returns an empty tile.
forEachTile iterates over each tile in a layer.

Mainly a helper for drawing tiles.
Rename tileSet to tileset.
Change public API for Iterable goodness.
Basic rendering based off Tilemap format.
Move the sprites around for now.