AMQP-77 Support Multiple Connections with CCF

CachingConnectionFactory now supports caching either Channels,
or Connections (default channels).

When channels are cached, a single connection is used.

When connections are cached, a connection is used for each channel.

RabbitAdmin auto declarations are not supported when caching
connections.

JIRA: https://jira.springsource.org/browse/AMQP-77

TODO: Parser (exclusive attrs)
TODO: Tests for listener events, including the Admin WARN log