Идеальная диаграмма компонентов!
Дополнено описание классов