Major code cleanup and modularization.
Merge branch 'master' of github.com:Learnful/learnful