Add an error image painter

Add an error image painter that will make errord downloads return a an 'error image' instead of the actual image. Error images are cached but do not replace the cache for the image itself meaning another request passing will show the correct image. Added a transparent error image painter that will show the error image as a transparent image, useful to keep the flow of a webpage. Each fetcher function now has an optional parameter to turn the error image of and throw errors as usual