Fiddle with alpha2 code lookup performance

alpha2 code looks ups are very common when scraping, so do a one off
conversion to dictionary and use that for the lookup.

Also remove a couple of linq query captures, reduces memory usage
slightly as less closures to capture
Optimize some http code slightly

Three tweaks:
Assume files are large, so use a large buffer.
Simplify image download to use .net 4.5 api, stream.CopyTo, for copying
from the webresponse to the memory stream.
When testing if a url is valid, request just the HEAD, not the full Get.
That makes the round trip much quicker as the server doesn't start
sending data.
Add tmdb scraper caches

TMDB.scraper is expensive to create as it queries the server for
configuration, so is adding server load, and round-trip town to each
query.

Switch to caching the scraper object if the configuration is unchanged,
this reduces the call time for scraping items in bulk dramatically.