docs: def add_state_errors(self, errors):
          """
          Add state errors
          Accepts a list of errors (or a single Error) coming from validators
          applied to entity as whole that are used for entity state validation
          The errors will exist on a  __state__ property of the errors object.
  
          :param errors: list or Error, list of entity state validation errors
          :return: shiftschema.result.Result
          """
          if not self.errors:
              self.errors = dict()
          if '__state__' not in self.errors:
              self.errors['__state__'] = []
  
          if type(errors) is not list:
              errors = [errors]
          for error in errors:
              if not isinstance(error, Error):
                  err = 'Error must be of type {}'
                  raise x.InvalidErrorType(err.format(Error))
  
              self.errors['__state__'].append(error)
  
          return self