Provide controller level Cache-Control support

Prior to this commit, Cache-Control HTTP headers could be set using
a WebContentInterceptor and configured cache mappings.

This commit adds support for cache configuration at the controller
method level, by returning a ResponseEntity instance:

ResponseEntity.status(HttpStatus.OK)
            .cacheControl()
              .maxAge(360)
              .cachePrivate()
            .and()
            .body(entity);

Issue: SPR-8550