Rewrite getting of connections to not call constructor multiple times
on a connection. Previously we would re-call constructor, mangling
connection state if the connection were attempting to connect already.