Add support for crunchyroll.com
Now a new FileDownloader is created when downloading a video

The progress hooks can be added using the method "add_downloader_progress_hook"
Move FileDownloader to its own module and create a new class for each download process

A suitable downloader can be found using the 'get_suitable_downloader' function.

Each subclass implements 'real_download', for downloading an info dict you call the 'download' method, which first checks if the video has already been downloaded
[academicearth] Support playlists (Closes #1976)
[youtube] Do not warn for videos with allow_rating=0

This fixes #1982
Test video: http://www.youtube.com/watch?v=gi2uH3YxohU
release 2013.12.17
Add webpage_url_basename info_dict field (Fixes #1938)
release 2013.12.17.1
[generic] Do not use compatibility result fallback
[utils] Fix url_basename
Add support for direct links to a video (#1973)
[academicearth] remove unused imports
[radiofrance] remove unused imports
release 2013.12.17.2
Simplify url_basename

Use urlparse from the standard library.
Merge pull request #1997 from rg3/simplify-url_basename

Simplify url_basename
[utils] Remove duplicated line

This line was added by accident in 42393ce234c651aaae244e1546e1803101765acc
[generic] Support application/ogg for direct links

Also remove some debugging code.
[YoutubeIE] Externalize format selection
[YoutubeIE] Add width and height to format dict