Better project structure
Merge branch 'master' into gh-pages
Revert "Merge branch 'master' into gh-pages"

This reverts commit 120271597a2351f79c3eccbb64b158cc3ab0a069, reversing
changes made to 2ce4c73bb30c58134084805dbb3cc6bad2b3e6f0.