Pushing first pass of tilemanager in. Along some test cases. Tile manager is still using terrible hard coded values, but seems to be working otherwise.