Netty: Make sure channel closing never happens on i/o thread

Similar to NettyTransport.doStop() all actions which disconnect
from a node (and thus call awaitUnterruptibly) should not be executed
on the I/O thread.

This patch ensures that all disconnects happen in the generic threadpool.

Also added a missing return statement in case the component was not yet
started when catching an exception on the netty layer.
can we add a check here for:

```
        NodeChannels nodeChannels = connectedNodes.get(node);
        if (nodeChannels != null && nodeChannels.hasChannel(channel)) {
```

just so we won't fork to the generic thread pool unless we really need to (And not part of stop, or explicit close of channel)?