RabbitMq's one-exchange-per-type routing strategy enhancements..

Hi,

This is a followup to my previous pull-req with one-exchange-per-type routing strategy, which now includes a few bug fixes of issues we've found while incorporating new components to this new routing strategy, like a problem with Timeout messages not being sent to 'InputQueueAddress', but instead directly to InputQueue, etc.

This includes an initial proposal for the feature commented at issue #237: sending messages to a queue/exchange directly by extending the 'endpoint' definition syntax.

This initial implementation works and fullfills my requirements, but due to preserving backwards compatibility with existing endpoints using classic routing, some changes are a bit less fun that what I would have liked...  See my comments at this pull-req, as we might find a better approach together.

Regards
Pablo