Mobile API release

@wedaly, @stephensanchez, @cpennington, @andy-armstrong: The mobile API feature branch. Still need to bring some more tests in and add a few docstrings, but I've cleaned up the worst of it. There are two basic themes with this:

1. Create a REST endpoint for read-only access to course video listings and very basic course information.
2. Make edx-platform aware of VAL, as a way to abstract away the specific locations of videos. This takes the form of an optional edx_video_id that's been added to the VideoModule.

A lot of the changes to VideoModule code was just extraction and moving things around a bit to separate out more of the transcripts functionality. One of the big design decisions was to make this as backward compatible and gracefully degrading as possible, so I tried to change as little real VideoModule code as possible.

Still waiting on Jenkins, but I think I've fixed all the broken tests. There were some minor issues with the upgrade from djangorestframework 2.3.5 -> 2.3.14 that took a while to track down. The last Jenkins build saw some OAuth2 related test fail, but I strongly suspect it has to do with the fact that there might be an outdated library on the Jenkins box with the same name (the analytics folks made a fork which I've switched over to using).

No, this should explicitly 404. It used to be the case that the listing code would verify that it existing before even emitting the link, so I didn't think to check it here, but that's no longer the case for performance reasons. That being said, I should have done the checking anyway. ty.