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 
They are probably more useful for the Solutions use case (e.g. ensure the API server is operational) than ours (since the LMS should always be operational). I'd prefer to keep them so there's one less thing to worry about if/when we ultimately add the rest of the Solutions API.