Try matching uploaded file type before defaulting to first official one

and memoize type_from_file_command
Add test for inferring content type from uploaded file

Added the sample .mp4 file from Apple's QuickTime sample page:
http://support.apple.com/kb/ht1425
Add documentation of content-type detection strategy

Also refactored to make the strategy hierarchy clearer
Improve content type detector tests and logic
Remove unnecessary memoization from content type detector
Prefer the intersection of file command and MIME::Types