everything is lazy
added some debug messages
added names for threads
added NamedThreadFactory
use zmq bindings instead of (slow) java implementation
improved listener
refactored sender
improved subscriber (fixed null pointer)