JSR-107 automatic configuration support

This commit updates the caching configuration infrastructure to
detect the presence of the JSR-107 API and Spring's JCache implementation.

Both @EnableCaching and the cache namespace are now able to configure
the required JCache infrastructure when necessary.

As JSR-107 permits the customization of the CacheResolver to use for
both regular and exception caches, JCacheConfigurer has been
introduced as an extension of CachingConfigurer and permits to define
those.

Issue: SPR-9616