MIFOSX-259: support runtime switching of cache through API. By default no-cache implementation is used.
Merge remote-tracking branch 'upstream/develop'