How about withCache that takes an immutable Cache and then behind the scenes creates the MutableCache.