Made the output filename the responsibility of the website subclass.
Added a factory method to the website class which creates the appropriate subclass based on the URL given to it.
Added a get_video_filename method to the website class.
Made two Website methods abstract via NotImplementedError, get_video_url and owns_url?.
Created a default implementation of get_video_filename in the Website class.
Made the site URL member data of the Website class.
Fixed a bug in the URL handling for Youtube.
Added output stating the filename for the download.
Replaced all code in the classes/tests to accommodate the other changes.