Replace Quadtree with TileGrid

This replaced the Quadtree tile mapping data structure with a simpler
one that only supports uniformly sized tiles. Currently the TileGrid
does not throw away tiles ever.