Use the low-level zmq bindings.

Otherwise, some messages are mangled, leading to some hang conditions in the
distributed runner.