Create only one zmq context to reduce overhead

Creating a zmq context for each PeerConnection object is wrong and creates a massive overhead.