David's unit tests, rebased and updated
Improve test coverage
Consolidate code in split mongo to DRY and fix too-many-statements pylint warning
Move courses and libraries into tabs on CMS dashboard.