Changed Thrift's DNode server to be a THsHaServer, explained relevant configuration properties better, changed DNode clients to use framed transport and reverted fixed DNode socket pool in QNodes.
This should solve issue #5 because we reuse sockets. And #6 as well, because now the number of IOReactors is not linked to the number of opened sockets to each DNode.