mattdrayer/api-proficiency-redux: New StudentGradebook

@chrisndodge @martynjames @ormsbee @ziafazal -- complete rework of "proficiency" with the introduction of a new 'gradebook' app.  

Essentially, 'proficiency' as a concept is no more -- we simply have 'grades' -- you'll see the leaders list is maintained although there are some slight schema changes as well as URI changes which will require corresponding updates in Apros.  These changes are most-easily reviewed in this PR by looking at the response_data elements returned by the modified views.

The seed script is not included here at the moment -- I'll be adding it either to this PR or in a follow-on PR in the next couple of days.  I'm really just looking for feedback and hopefully a thumbs-up that the logic/math are sound and that all of Apros' needs are met with the updated (smaller) API.
If you use a `pre_save` signal instead, you can fetch the model in it's previously saved state (i.e. no need to involve `StudentModuleHistory`). So something like `old_val = StudentModule.objects.get(pk=instance.pk)` or something like that.