Create ValueObject to encapsulate comparison between value objects

Learned about this project when I came across your Denver talk posted on Vimeo. Kudos for doing this! Here's my way of thanking you. :-)

This should DRY up value objects in the domain such that we don’t have to hand code equality methods in them. Other checks can be added later such as checking if ‘other’ is actually the same class.