Refactor the tile library to create Tile objects on demand instead of at load time.
Make TileStack into a class that knows how to serialize itself, now TerrainMesh stores its TileStack easily.
Calculate revealed group tiles in a more robust way, notify after finished adding a group tile, make the group hints easier to use.
be a little smarter about when meshes notify during group adds

closes #1
closes #2
closes #3