restructured so that TileView handles its own animations