async def _connect(self, host_loc):
        '''
        Simple enough stuff to figure out where we should connect, and creates
        the appropriate connection.
        '''
        scheme, host, path, parameters, query, fragment = urlparse(
            host_loc)
        if parameters or query or fragment:
            raise ValueError('Supplied info beyond scheme, host.' +
                             ' Host should be top level only: ', path)

        host, port = get_netloc_port(scheme, host)

        if scheme == 'http':
            return await self._open_connection_http(
                (host, int(port))), port
        else:
            return await self._open_connection_https(
                (host, int(port))), port
Simple enough stuff to figure out where we should connect, and creates
        the appropriate connection.