XD-1707 Register Named on-Demand Channels

JIRA: https://jira.spring.io/browse/XD-1707

Previously, only the `LocalMessageBus` registered named
channels with the application context.

Refactor the `SharedChannelProvider` by pulling it up to
`MessageBusSupport` and register named changed with the
context in the Rabbit and Redis MessageBus.

Move a test that was previously only run with the
`LocalMessageBus` to the abstract test class so it is run
for all buses.

The `TestMessageBus` code incorrectly replaced the
built-in message bus with a new bus. Instead, use
the `TestMessageBus` to wrap the existing message bus.