Handle Invalid Images without crashing

Previously, Muzei assumed that if a file specified by an art source was downloaded that it was a valid image, leading to crashes when loading the BitmapRegionLoader on an invalid file. This fix attempts to open the image immediately after writing it to ensure that the image is valid and able to be parsed by Muzei. By doing this at the ArtworkCache level, we can properly mark the error state and show grumpy mcpuzzles for invalid images.
Merge pull request #102 from ianhanniballake/invalid_image_handling

Handle Invalid Images without crashing