chapter 4
chapter 5
chapter 6 - new super class
pulled up equals in super class
new tests for equality
chapter 7 - equals updated, more changes to come
split up tests
chapter 8 - added factory method
decoupling tests from actual classes
chapter 9 & 10
reverted abstract class, pulled up equals, added toString