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).

Yeah, it occurred to me. But basically, my approach to this has been to do the absolute least invasive thing possible, and that's the format this method was returning before. There are weird interdependencies in this code, and I believe this value is actually parsed elsewhere to extract the YouTube ID back out (because they can enter a YouTube link in a variety of formats and we try to guess in Studio).