I see. So there is one new connector that is passed to each client, and one singleton connector that is used to check the presence of the agent.
I'm fine with this, but does the `Connector` open a connection or does it allocate resources we would want to close once we know it is available? I mean if it does keep a connection or similar, perhaps it is better to just keep an `isAvailable` boolean variable instead of the singleton Connector.