GH-9: Fix DslRecipientListRouter recipients order

Fixes: https://github.com/spring-projects/spring-integration-java-dsl/issues/9

Since `RecipientListRouter` assumes that recipients should receive message in that order in which they have been added,
the logic with `Map` for each recipient type in the `DslRecipientListRouter` isn't correct.

* Change it to the `List<Tuple2<?, ?>>` and do appropriate logic during iteration saving an order.
* Add `requiresReply = true` for those gateway `Spec`s, which are based on those XML components which provide that option as `true` by default.
* Add more `.recipient()` methods to the `RecipientListRouterSpec`
Because we have here several `Map`s for different types of `key` - `String` or `MessageChannel`.
In the end we just need to populate a single `List<Recipient>` to the parent.

And from other side `Map` eats different entries with the same key, but I guess `RecipientListRouter` allows to configure the same channel several times.