Allow ConnectionConfig to use either URI or named parameters.

AMQP URI is a nicer (at least in my PoV) way to configure complex RabbitMQ remote connections
http://www.rabbitmq.com/uri-spec.html
http://www.rabbitmq.com/uri-query-parameters.html

* Add new "rabbitmq.uri" parameter
* Return RuntimeException in case of malformed or invalid URI