fix alpha pngs turning into white pngs when caching when you have a method that transforms the image but doesn't touch the pngs
Images can be downloaded in multiple threads.  Therefore the call to self.failedURLs containsObject:url must be synchronized to avoid a collection mutation error.
Merge pull request #388 from cfis/synchronize_failed_urls

Synchronize self.failedURLs
call progress block regardless of completion block, options
Merge pull request #389 from lavoy/master

Calls progress block regardless of completion block and options
Merge pull request #383 from garthex/white_png_issue

fix alpha pngs turning into white pngs