Ensure that the cache path is writable

New check in DiskCache to ensure that the cache path is writable and try to make it writable if it isn't