Mattdrayer/api coursescleanup: Docstrings and some style improvements

Went through courses/views.py and added docstrings per the convention that @ormsbee and I have put together.  Also changed some of operations' formatting to follow the fail-fast style, although there are still a couple spots needing some attention.

@martynjames, please take a specific look at CoursesGroupsList -- we now return an array directly (ie, [ ]), versus encapsulating it within a payload object ( {"groups" : [ ] } ).  Let me know if this is a problem.

@chrisndodge, fyi on the overall change.