Skinning and REST interface support from David Glance @ UWA

This replaces the original pull request submitted by David, #2000.  I instead pulled his code onto a working branch, did testing and fixing myself there.  Easier also to deploy staging from a core branch.

Tested:
- local machine automated and manual
- green on Jenkins
- this branch currently deployed

Dependencies:
- Two new dependencies introduced here, djangorestframework and pysimplesoap.  They are installed by chef and in the README_SETUP
- Database migration, mostly additional coumns on c2g_courses