Object used to interface between connections and protocols.
IConnector manages one connection.
|Try to connect to remote address.
|Disconnect regardless of the connection state.
|Return destination this will try to connect to.
|Stop attempting to connect.
Disconnect regardless of the connection state.
If we are connected, disconnect, if we are trying to connect, stop trying.