start
Logs in to the target server and returns an active connection.
It only makes sense to this method once. If it is called repeatedly it will return the same by reference CompletableFuture
Return
CompletableFuture containing RPCConnection or throwing RPCException if the server version is too low or if the server is not reachable within a reasonable timeout or if login credentials provided are incorrect.