Updated to use string addresses.

Now fully supports string addresses, you can specify either the `tcp` or `udp` scheme, or leave it empty for backwards compatibility and to allow the executor to choose the best scheme:

- If you specify the `tcp` scheme, only that scheme will be used,
- If you specify the `udp` scheme, it may be switched to `tcp` if the first request fails,
- If you don't specify any scheme then either `tcp` or `udp` will be used depending on the query size.