But do we actually need custom getter/setters? Because I'm seeing a not great API for working with the cache as a consequence of a feature that seems cool but not necessary in our use cases.