This PR overhauls how DNS round robin works. Now, there is a separate client for DNS round robin, which is async, meaning the original Client code no longer is async. This means we don't have to worry about async causing problems with our unit test runs anymore.
The new DNS round robin client was tested using the vertica-connection-params-tests integration test suite and also some manual testing using an example app.
This PR overhauls how DNS round robin works. Now, there is a separate client for DNS round robin, which is async, meaning the original Client code no longer is async. This means we don't have to worry about async causing problems with our unit test runs anymore.
The new DNS round robin client was tested using the vertica-connection-params-tests integration test suite and also some manual testing using an example app.