Send a treq HTTP POST request to /ssllogin

        :param method: treq method to use, for example "treq.post" or
                       "treq_kerberos.post".
        :param kwargs: kwargs to pass to treq or treq_kerberos, for example
                       "auth" or "agent".

        :returns: deferred that when fired returns a dict from sslLogin

def _request_login(self, method, **kwargs):
        """
        Send a treq HTTP POST request to /ssllogin

        :param method: treq method to use, for example "treq.post" or
                       "treq_kerberos.post".
        :param kwargs: kwargs to pass to treq or treq_kerberos, for example
                       "auth" or "agent".

        :returns: deferred that when fired returns a dict from sslLogin
        """
        url = self.url + '/ssllogin'
        # Build the XML-RPC HTTP request body by hand and send it with
        # treq.
        factory = KojiQueryFactory(path=None, host=None, method='sslLogin')
        payload = factory.payload
        try:
            response = yield method(url, data=payload, **kwargs)
        except ResponseFailed as e:
            failure = e.reasons[0]
            failure.raiseException()
        if response.code > 200:
            raise KojiLoginException('HTTP %d error' % response.code)
        # Process the XML-RPC response content from treq.
        content = yield response.content()
        if hasattr(xmlrpc, 'loads'):  # Python 2:
            result = xmlrpc.loads(content)[0][0]
        else:
            result = xmlrpc.client.loads(content)[0][0]
        defer.returnValue(result)