Hook for Disc Image Cache Writing

I wanted to offer this, but I don't know if this will be something widely useful enough to warrant adoption in the library.

The library provides a nice hook in the downloader portion of the library, but it does not have a similar hook for image storage.

To change this, I placed a simple interface around the lines that wrote to the disc cache using an output stream.

The current state is not completely ready to be re-integrated, I just wanted to see if you were even interested in the addition.

A typical use case for this would be if someone wanted to add encryption to the library, they could use a downloader to decrypt for "file://" images and encrypt using this interface when a write happens. The memory cache would always be unecrypted.