docs: def guess_payload_class(self, payload):
          """
          DEV: Guesses the next payload class from layer bonds.
          Can be overloaded to use a different mechanism.
  
          :param str payload: the layer's payload
          :return: the payload class
          """
          for t in self.aliastypes:
              for fval, cls in t.payload_guess:
                  if all(hasattr(self, k) and v == self.getfieldval(k)
                         for k, v in six.iteritems(fval)):
                      return cls
          return self.default_payload_class(payload)