Zmq architecture

Why not do this directly inside `ServerHandler` or `ApplicationSocket` initializer? If you think that this replacement is indeed necessary to be here, then maybe creating a `set_socket()` method in `ServerHandler` or in `ApplicationSocket` could help with documentation and clarification of what's being done.