Better choices for the video URL admin.

Switched from a static list of choices to using
video_type_registar.choices, which gets updated as we register new
video types.
Removed redundant query from Video.get_or_create_for_url

At the start of the method we call VideoUrl.get() and pass in a URL.
If that returns no results, we do a second get() call and pass in URL,
type and videoid.  There's no way that the second could return any
results there.
Changed VideoUrl uniqueness to (url, type) (#1750)

Added a migration for this and bumped up the South version slightly
because the old version wasn't working with newer mysql versions,
which we use for dev work (South issue #601).

Updated get_or_create_for_url to use (url, type) when it looked up
existing video URLs.
Changed VideoUrl.type length to 2.

This allows us to use the same system as Team.workflow_type.  If other
apps want to add new types, then we create a 2-char type with the
first char being unique to the app.  This makes it easier to ensure
that type codes stay unique.
Merge pull request #1751 from pculture/gh-1750

Gh 1750, looks great