Log WebSocket connection issues at DEBUG level

WebSocket clients going away is an expected and common occurance.
Logging at ERROR level on failure to close a connection or on failures
to write data to a WebSocket sessions has a high potential for false
positives with very little to do. This change lowers the log level for
a number of log messages that fit this category.

This should be helped by the effort already spent for 4.1 to ensure
logging at DEBUG level doesn't produce excessive amounts of logging.

Issue: SPR-12155
HttpEntityMethodProcessor supports custom HttpEntity subclasses again

Issue: SPR-12242
BeanWrapper supports traversal of nested paths with Java 8 Optional declarations

Issue: SPR-12241
SystemEnvironmentPropertySource uses actual SecurityManager check and direct keySet access

Issue: SPR-12224
Escape single quotes in the reference manual

This commit ensures that single quotes nested in double quotes in
code examples in the reference manual are properly escaped using ''.

Issue: SPR-12246
Lower "no session" message log level in SubProtocolWSH

Issue: SPR-12247
Consistent Environment access in XML bean definition parsing code

Issue: SPR-12248
ComponentScanBeanDefinitionParser supports placeholders for entire base-package specification and for type filter expressions

Issue: SPR-10424
Issue: SPR-10425
Defensively use setRemoveOnCancelPolicy for JDK 6 compatibility

Issue: SPR-12238
Message broker thread pools should be set up in allowCoreThreadTimeOut mode

Issue: SPR-12249
Introduced addScope convenience method on CustomScopeConfigurer (for use in WebSocket configuration)
DataBinder unwraps Optional objects and allows for proper handling of Optional.empty()

Issue: SPR-12241
Polishing
ComponentScanAnnotationParser supports multiple base packages within a single placeholder as well

Issue: SPR-10425
Polish FormHttpMessageConverter
Support writing multipart non-ASCII file names

Issue: SPR-12108
Move MessageChannel fields up to AbstractMessageBroker
Detect unsent DISCONNECT messages

This change uses a ChannelInterceptor (inserted at index 0) to detect
when a DISCONNECT message is precluded from being sent on the
clientInboundChannel. This can happen if another interceptor allows
a runtime exception out from preSend or returns false.

It is crucial for such messages to be processed, so when detected
they're processed still.

Issue: SPR-12218
Fix test dependency
Fix Javadoc link to DEFAULT_NONE in @RequestMapping