The simple cache ihas a number of issues
* the "max cache size" is not the max cache size
* the purge typically only purges DOWN to the max cache size
* once you reach max you are basically purging constantly.
This change addresses that a bit by adding highwater threshold at 95% leaving a bit of headroom for the incoming cache updates while we purge, and a low water threshold, that we purge down to (70%) .
This means people can now set their cache to a ramdisk of they really want and it won't (normally) overflow.
it reduces the cache thrashing, this is not a speedup on the main thread really, but just a less naive process.
This does not address the fact that every time we check the cache it has to enumerate every single file (beyond stupid) even though most have not changed. This is TBD.