Решение на 5-та задача от SOLID and Design Patterns Lab-а

Здравейте ето го моето решение моля кажете ми дали е правилно, ще постна само класовете, в които съм направил промени :

ModEdit: Забранено е цитирането на над 15 реда код във форума, прочети правилата.