rework CacheWriter writeAll() and deleteAll() to permit partial success

Makes sense to me, so +1 on doing it