Rewrite. "Harder, Better, Faster, Stronger"

This is in response to #3, which I raised a couple of months ago. With help from @nathggns, we have rewritten the entire thing to work in a much nicer way.

It now uses the prototype in the correct way [as I have discussed on my blog](http://oli.me.uk/2013/06/01/prototypical-inheritance-done-right/). It should be a bit more powerful and quite a bit easier to use.