Establishes connection to the remote server.
Returns 0 if the connection was established, and socket error code otherwise.
In .NET, if an exception has been raised, -1 may be returned.
Use this method to establish connection to the remote server. The remote address is specified by the Address property. This method checks, whether UseSocks or UseWebTunneling is specified, and establishes the connection via a SOCKS or an HTTP Proxy server.