Pass client port as a parameter to listen-clients
Replace threads with futures