Evolution interview question

Solving a simple programming exercise using decent object modeling.