#1589

First attempt to create a "MappedChannelGroup" as proposed in #1589

For sure this work, though I find implementation really [really] flaky.
Maybe it could "less ugly" if we create an intermediary abstract class that could contains,
the following fields:
- name, executor, remover
and the following methods:
- all public group operation methods
- protected serverChannels() and nonServerChannels()

Even though, in the end, ChannelGroup directly inherit from Set and is by definition incompatible with Map.

Maybe finally the best solution is to completely fork the code from Default/ChannelGroup along with Default/ChannelGroupFuture (due to the channelGroup method..) to roll a Default/MappedChannelGroup .

After that, I guess it would be possible to create some kind of utility class that could help reduce code duplication.

Any other idea ? Would Trustin have any clue ?

Thanks,