Workaround for Derby's limited support for JDBC 4.1 getObject(index, requiredType)

Issue: SPR-12157
Polishing
Make SocketUtils a concrete class

Per the Javadoc for the SocketUtils() constructor, SocketUtils can be
instantiated as a Spring Bean in XML configuration files; however,
SocketUtils is currently abstract which prevents such usage.

This commit removes the 'abstract' declaration thereby allowing
SocketUtils to be instantiated as a Spring bean.

Issue: SPR-12169
Consistent support for java.util.Optional for all applicable handler method arguments

Issue: SPR-12171
Polishing
Generalized workaround for JDBC 4.1 getObject(index, requiredType) failures on MySQL and Derby

Issue: SPR-12174
Issue: SPR-12157
Accept empty Content-Type header

Issue: SPR-12173
CompositePropertySource allows for access to its nested property sources

Issue: SPR-12182
GenericConversionService detects enum subclasses as well

Issue: SPR-12181
CachedIntrospectionResults uses ConcurrentReferenceHashMap for its type descriptor cache

Issue: SPR-12185
Polishing
Client request implementations enforce RFC 6265 (cookies in a single header)

Issue: SPR-12196
Polishing

Issue: SPR-12196
ConfigurationClassParser avoids double registration of nested classes which extend their containing class

Issue: SPR-12195
GenericTypeAwarePropertyDescriptor implements equals/hashCode for proper lookups on IBM JVM 6

Issue: SPR-12185
WebMvcConfigurationSupport uses static NoOpValidator instead of anonymous inner class
Latest dependency updates (Reactor 1.1.4, Undertow 1.0.16)
GenericTypeAwarePropertyDescriptor implements equals/hashCode for proper lookups on IBM JVM 6

Issue: SPR-12185
Polishing
Log warning for single optional constructor when no default constructor to fall back to

Issue: SPR-12161