1) Класс Tile вынесен в отдельный файл

2) Создан класс MediaSet, в котором хранится ассоциативный массив уникальных медиаэлементов.

По нажатию на тайл создается новый медиаэлемент и помещается в MediaSet. Соответственно можно управлять каждым медиаэлементом, используя его имя.