i think modules should use `BaseClient#cache`. the BaseClient is only available to the module. `remoteStorage.caching` is directly available to the app. that is why it's messy.

the module can expose methods to the app to enable/disable caching functionality, but in no situation do we want apps to mess with the caching paths directly, the module should have full control of folder names.