Went overkill to show better encapsulation and abstraction through interfaces. Depending on context, I tend to choose simplicity as long as my team is aware of how the object should be used so that it doesnt allow unpredicted behavior. Technique used here is Interface Segregation Principle.
Amend commit. Never done this before after pushing... Merge branch 'master' of github.com:longility/Monopoly