Return the schema as a `dict`, ready to be serialized by
        :mod:`json`.

def to_dict(self):
        """Return the schema as a `dict`, ready to be serialized by
        :mod:`json`.

        """
        result = {}
        stack = collections.deque()
        stack.append(
            (
                result,
                {_to_camel_case(k): v for k, v in self.__dict__.iteritems()},
            )
        )
        while stack:
            dest, source = stack.pop()
            if isinstance(dest, dict):
                self._process_dict(dest, source, stack)
            else:
                self._process_list(dest, source, stack)
        return result