Great refactor of 2014.
CR tweaks
Merge pull request #20 from nevir/great-refactor

Great refactor of 2014. Closes #3.