Courses API

This is a subset of #6109. The goal here is to trim the code down to exactly what will be needed by Insights and get it merged soon. We will revisit the other APIs soon after so that the edx-solutions fork isn't too divergent.

@mulby @mattdrayer @cpennington @ormsbee @dsjen @smagoun @shnayder @mikigoyal 
I don't know much about the roles. @clintonb do you know how they can relate to the OAuth2 provider? Should we make some sort of connection between the two?

I agree with @mulby that this is out of the scope for what we need at the moment.