Tile::SetCell = SetCellIndex + SetColor

Tile now only has SetCell instead of SetCellIndex and SetColor
Because of that it needs to be passed both the Cell by reference and the
cell index (because cells don't know their own index)

Still, when you change a Tile's Cell, you must update the Cell's
location to match the tile.

IMPORTANT: Do cells really need locations? Might be extra!