AbstractApplicationContext's ApplicationListenerDetector removes listeners from ApplicationEventMulticaster on individual destruction

Issue: SPR-7856
Apply name-matching transaction attributes to user-level methods only

In particular, do not apply them to GroovyObject methods and other kinds of synthetic methods in language runtimes. The only exception are bridge methods since those do eventually point to a user-level generic method.

Issue: SPR-10803
Spring uses Joda-Time 2.0's specific parseLocalDate/parseLocalTime/parseLocalDateTime methods now

Issue: SPR-11014
Avoid filling up AntPathMatcher cache

This change avoid use of AntPathMatcher to extract URI template
variables when the lookup path is used as the best matching pattern.

Issue: SPR-10803
Protect against NPE when resolving generic array

Update ResolvableType to check that the resolved component type from
a generic array is not null before attempting to use it to generate the
resolved array class.

Issue: SPR-11044
Refined check for cache turnoff threshold

Issue: SPR-10803
Polishing
Allow for specific instance-based match to override factory method signature match

Issue: SPR-11046
AutowireCandidateResolver receives original bean name (including FactoryBean prefix if applicable) for correct generic type check in case of a FactoryBean definition

Issue: SPR-11045
Polishing
Consistent javadoc references to java.util.concurrent and javax.enterprise.concurrent
Add timeout async request handling to OSIV components

This change adds async web request timeout handling to OSIV filters
and interceptors to ensure the session or entity manager is released.

Issue: SPR-10874
Allow null method for getTransactionAttribute

Update MatchAlwaysTransactionAttributeSource.getTransactionAttribute
to allow a null method argument. Passing a null method is not
recommended and is not indicated as valid in the Javadoc, however,
this was allowed in previous versions of Spring.

Issue: SPR-11048
Update Javadoc for mocks regarding Servlet 3.0

Commit deba32cad9 upgraded the Servlet API mocks to Servlet 3.0;
however, not all of the Javadoc was updated accordingly.

This commit updates the remaining Javadoc with regard to Servlet 3.0 as
the baseline for mocks in the spring-test module.

In addition, this commit syncs up the mocks used for internal testing in
the spring-web module with the most current versions from spring-test.

Issue: SPR-11049
Delete unnecessary @SuppressWarnings("unused")
Deleted unused resourceLoader field in Jaxb2Marshaller
Delete unused imports
QualifierAnnotationAutowireCandidateResolver matches regular bean name for FactoryBean dependency type as well
Upgraded to Apache HttpComponents HttpClient 4.3.1 and HttpAsyncClient 4.0 GA, as well as Jackson 2.2.2
GenericTypeResolver's resolveTypeArguments needs to return null for raw types (for backwards compatibility with 3.2)

Issue: SPR-11052