Reworked lab1 to use a more realistic domain model