Flesh out the tests a bit more
add notes
Apply extract method refactoring
Apply Extract Class
Apply move method to deal with Feature Envy
Apply Hide Delegate