docs: def upsert(self, name, value=None, seq=None):
          """Add one name/value entry to the main context of the rolne, but
          only if an entry with that name does not already exist.
  
          If the an entry with name exists, then the first entry found has it's
          value changed.
  
          NOTE: the upsert only updates the FIRST entry with the name found.
  
          The method returns True if an insertion occurs, otherwise False.
  
          Example of use:
  
          >>> # setup an example rolne first
          >>> my_var = rolne()
          >>> my_var.upsert("item", "zing")
          True
          >>> my_var["item", "zing"].append("color", "blue")
          >>> print my_var
          %rolne:
          item = zing
              color = blue
          <BLANKLINE>
          >>> my_var.upsert("item", "zing")
          False
          >>> print my_var
          %rolne:
          item = zing
              color = blue
          <BLANKLINE>
          >>> my_var.upsert("item", "broom")
          False
          >>> print my_var
          %rolne:
          item = broom
              color = blue
          <BLANKLINE>
  
          .. versionadded:: 0.1.1
          
          :param name:
             The key name of the name/value pair.
          :param value:
             The key value of the name/value pair. If not passed, then the value
             is assumed to be None.
          :returns:
             Returns True if the name/value was newly inserted. Otherwise, it
             returns False indicated that an update was done instead.
          """
          for ctr, entry in enumerate(self.data):
              if entry[TNAME]==name:
                  new_tuple = (name, value, entry[TLIST], entry[TSEQ])
                  self.data[ctr]=new_tuple
                  return False
          new_tuple = (name, value, [], lib._seq(self, seq))
          self.data.append(new_tuple)
          return True