Confirm that we may access the target cluster.

def start(self):
        """
        Confirm that we may access the target cluster.
        """

        version = yield self.request("get", "/version")

        if version != 2:
            raise GanetiApiError("Can't work with Ganeti RAPI version %d" %
                                 version)

        log.msg("Accessing Ganeti RAPI, version %d" % version,
                system="Gentleman")
        self.version = version

        try:
            features = yield self.request("get", "/2/features")
        except NotOkayError, noe:
            if noe.code == 404:
                # Okay, let's calm down, this is totally reasonable. Certain
                # older Ganeti RAPIs don't have a list of features.
                features = []
            else:
                # No, wait, panic was the correct thing to do.
                raise

        log.msg("RAPI features: %r" % (features,), system="Gentleman")
        self.features = features