INT-3325 Add Redis Channel Message Group Store

JIRA: https://jira.spring.io/browse/INT-3325
JIRA: https://jira.spring.io/browse/INT-1870

Optimized MGS for QueueChannel - uses a LIST for
each channel and LPUSH, RPOP.

* Also fix MutableMessage to be Serializable

INT-1870 Priority Redis Channel Message Store

Supports priorities 0-9 (+ no priority).

Priorities out of that range are treated as no priority.

Polishing - Add Marker Interfaces

* Emit a `WARN` log if a channel is used with a regular MessageGroupStore
* Allow message-store on namespace when defining a priority channel

INT-3325 Polishing; PR Comments

Fix some typos in JavaDocs and Docs
INT-3328: Add `EnablePublisher` Annotation

JIRA: https://jira.spring.io/browse/INT-3328

INT-3328: Polishing
INT-3332 GlobalChannelInterceptorBeanPostProcessor

Implicit channel declaration for items downstream
of a `ChannelInterceptor` were not created.

The `BPP` eagerly fetched the interceptors during its
own creation; this caused the context initialization to fail
because the channel initializer hasn't run yet.

Defer creation of the interceptor beans until they are
actually needed.

Also, when using `@Configuration`, the channelInitializer
is no longer the first bean in the bean factory.

INT-3332 Use SmartLifeCycle to Apply Interceptors

Instead of using a bean post processor, the interceptor
processor now performs the channel interception when beans
in phase Integer.MIN_VALUE are started - after all beans
have been instantiated.

Polishing
INT-3336 Add error-channel to MQTT m-d-c-a

JIRA: https://jira.spring.io/browse/INT-3336

Previously exceptions thrown in a flow downstream of a
message-driven-channel-adapter were not logged and thrown
back to the client, causing the connection to drop and
reconnect.

Add `error-channel` to the adapter to allow normal
error handling. If no error channel, catch and log
the unhandled exception.

Add `adapter.stop();` in the end of 'real' tests to close the mqtt-connection
INT-3336 Fix MQTT Test Rule

JIRA: https://jira.spring.io/browse/INT-3336

Disconnect the client after verifying the broker is available.
Change the rule to a class level rule in DownstreamExceptionTests.
Test, Javadoc Cleanup

* Remove an unnecessary test.
* Fix timing in header channel registry test.
* Fix Javadocs in VetoCapableInterceptor
INT-3343 Bump JSch, Hibernate Versions

JIRA: https://jira.spring.io/browse/INT-3343
Add Bamboo Status to README
INT-3342 Allow Custom TypeLocator for SpEL

JIRA: https://jira.spring.io/browse/INT-3342

Allow customization of the `TypeLocator` used by SpEL
`EvaluationContext`s throughout the framework.
INT-3330 `EnableIntegrationMBeanExport` Annotation

JIRA: https://jira.spring.io/browse/INT-3330

INT-3330: Enable SpEL evaluation

INT-3330: Polishing for `MBeanExporterHelper`

INT-3330: Fix `errorChannel` early access

INT-3330: Polishing according PR comments

Polishing - copyrights, author, docs
INT-3344 Update Spring Framework to 4.0.3

JIRA: https://jira.spring.io/browse/INT-3344
INT-3330 Fix JDK8 Javadoc Violations

JIRA: https://jira.spring.io/browse/INT-3330
INT-3331: Add `ChannelSecurityInterceptorFB`

JIRA: https://jira.spring.io/browse/INT-3331

INT-3331: PR comments and others

* Register `ChannelSecurityInterceptorBeanPostProcessor` as a `BeanDefinition` (not `BPP`)
* Get `ChannelSecurityInterceptor`s from `ChannelSecurityInterceptorBeanPostProcessor#afterPropertiesSet()`
* Make `ChannelSecurityInterceptor` `final` to disallow to subclass it for unexpected issues
* Provide more convenience to the `ChannelSecurityInterceptorFactoryBean` - to allow to use it from xml configuration

Doc Polishing
INT-3345 Update Spring-AMQP to 1.3.0.RELEASE

JIRA: https://jira.spring.io/browse/INT-3345
INT-2918: Add Redis Outbound Command Gateway

JIRA: https://jira.springsource.org/browse/INT-2918