Story #81432: Replace TYPO3 caching solution with PSR-6 / Doctrine capable alternative
Create shared, base cache configuration affectable by TYPO3_CONF_VARS
Rather than force a TYPO3 database backend and variable frontend as default, it is a simple matter to place this default configuration in TYPO3_CONF_VARS together with the usual cache configurations. Furthermore, so many of the options used in the cache configurations are duplicated and would greatly benefit from inheriting things like default lifetime and default cache pool from a single source of configuration.
This is achievable by loading the default cache configuration from a reserved named configuration and using array_replace_recursive when determining cache configuration to merge the custom configuration on top of the default configuration.
Finally this allows lifting the requirement that a cache must be configured: as long as the default configuration is a workable cache setup, any cache can be created on-the-fly without any problems and will correctly use the ad-hoc identifier (but will only be manually flushable until properly configured).