Follow up from #60 (comment)
Currently we close each connection in the client. We need to implement a mechanism for managing persistent connections, potentially multiple at a time based on hostname. Might be worthwhile to investigate how other libraries manage them.