DNS measurement results are a little wacky.  Sometimes you get a single
        response, other times you get a set of responses (result set).  In order
        to establish a unified interface, we conform all results to the same
        format: a list of response objects.

        Additionally, the qbuf property is weird too.  In the case of multiple
        responses, there's one qbuf for every response, but for single results,
        it's not stored in the result, but rather the outer result data.  Again,
        for the purposes of uniformity, we shoehorn the qbuf into the first (and
        only) response in the latter case.

def build_responses(self):
        """
        DNS measurement results are a little wacky.  Sometimes you get a single
        response, other times you get a set of responses (result set).  In order
        to establish a unified interface, we conform all results to the same
        format: a list of response objects.

        Additionally, the qbuf property is weird too.  In the case of multiple
        responses, there's one qbuf for every response, but for single results,
        it's not stored in the result, but rather the outer result data.  Again,
        for the purposes of uniformity, we shoehorn the qbuf into the first (and
        only) response in the latter case.
        """

        responses = []
        part_of_set = True

        # Account for single results
        if "result" in self.raw_data:
            if "qbuf" in self.raw_data:
                if "qbuf" not in self.raw_data["result"]:
                    self.raw_data["result"]["qbuf"] = self.raw_data.pop("qbuf")
            responses.append(self.raw_data["result"])
            part_of_set = False

        try:
            self.responses_total = int(self.raw_data["result"]["submax"])
        except (KeyError, ValueError):
            pass  # The value wasn't there, not much we can do about it

        try:
            responses += self.raw_data["resultset"]
        except KeyError:
            pass  # self.responses remains the same

        return part_of_set, responses