Not relying on GetHashCode, require caches have flush method, constructor changes for redis client