Basic System Design This projected was created for practicing Clean Code and OOP principles. There are five entities: plain, bird, crow, dog and cat. Hierarchy was implemented between these enteties. Special class inherited from IEnumerable for collecting enteties.