Merge branch 'master' into gh-pages
class based + tests
wrote tests
Merge branch 'tests'