Cleaned up cache handling.

IOManager now implements these two methods:

    * IOManager._read_cache()
    * IOManager._write_cache()

The methods work in parallel.