AMQP-347-2: Remove aborted=true on ShutdownSignal

JIRA: https://jira.springsource.org/browse/AMQP-347
AMQP-347 Fix Connection Shutdown Test

Container needs to be stopped so it doesn't steal responses
for other tests (test.queue).
AMQP-230: DirectExchange: Allow Omit `key` Attr

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

Previously, the `key` attribute for a `direct-exchange` `binding` could be omitted,
but that meant that the binding used an empty `routingKey`.
With this change an empty `routingKey` requires `key=""`.
Omitting the `key` means that the binding will use the name of the provided `Queue` or `Exchange`
for the routing key.

AMQP-230: Move routingKey logic to DEParser

AMQP-230: routingKey resolution using SpEL

AMQP-230 Polishing

Author tag; what's new.
AMQP-355 Fix Race Condition in Tests

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

The container might stop before the final call to ErrorHandler.

Change the mock to count down a latch, and wait for the latch
before stopping the container - instead of simply verifying
handleError was called the expected number of times.

Move the other Assert inside the try block so the shutdown
will always happen.

Remove the unnecessary mock.reset().