Fix ConcurrentReferenceHashMap max constraints

Update calculateShift to respect the maximum upper bound as well as the
minimum value.

Issue: SPR-11720
Merge pull request #513 from HejiaHo/master

* pull513:
  Fix ConcurrentReferenceHashMap max constraints
Polish static resource handling mechanism

- ResourceResolver and ResourceResolverChain now have a consistent API
  with regard to method names and terminology.

- ResourceResolver and ResourceResolverChain now accept
  List<? extends Resource> instead of List<Resource> for simplified
  programmatic use.

- Improved Javadoc across the package.

- Formatted code to align with standards.

- Removed all references to ResourceUrlPathTranslator.

Issue: SPR-10933
Update Javadoc for PublicResourceUrlProvider
AnnotationTypeFilter prevents ASM-based loading of java.* interfaces as well

Issue: SPR-11719
considerInterfaces should work without considerInherited as well

Issue: SPR-11719
Polishing
ShallowEtagHeaderFilter writes body early on sendError/sendRedirect and interprets setContentLength/setBufferSize as a hint for capacity increase

Issue: SPR-11705
Issue: SPR-11717
Avoid deprecation warnings in ValidatorFactoryTests

ValidatorFactoryTests now uses Bean Validation 1.1 APIs where
appropriate.
Final patches from ASM 5.0.2 release

Issue: SPR-11212
DispatcherServlet skips multipart resolution if error page exception attribute indicates MultipartException as root cause

Issue: SPR-11716
checkNotModified leniently handles IE-10-style If-Modified-Since values and silently proceeds if header value cannot be parsed at all

Issue: SPR-11727
SpringProperties falls back to ClassLoader.getSystemResource when loaded in bootstrap ClassLoader

Issue: SPR-11721
Polish logging in resource handling
ServletServerHttpResponse specifically checks for Servlet 3.0's HttpServletResponse.getHeader(String) method

Issue: SPR-11712
Polishing
General defensiveness about the bootstrap ClassLoader (i.e. null ClassLoader)

Issue: SPR-11721
Polishing
Rename Reactor support classes

This change modifies the names of the Reactor support classes in order
to align with the same changes in the 4.0.x line which now supports
both Reactor 1.1 and 1.0.

Issue: SPR-11636
Default JmsListenerContainerFactory lookup

Prior to this commit, the default JmsListenerContainerFactory to use
must be explicitly set. Since having a single container factory is a
fairly common use case, we look up the default one automatically
using the bean name "jmsListenerContainerFactory".

It is still possible to provide an explicit default but since it refers
more to "the" container factory to use, the parameter has been
renamed to "containerFactory" which is shorter and more explicit.

The lookup strategy is lazy: if all endpoints are providing an
explicit container factory and no container factory with the
"jmsListenerContainerFactory" bean name exists, no exception
will be thrown.

Issue : SPR-11706