Fix TileRequest loading bug again. Refactor TileRequest.