zmq as socket layer

zmq has no `accept` phase. not easy to implement multithreaded server only using direct request/reply pattern.
look at this http://zguide.zeromq.org/page:all#Multithreading-with-MQ