docs: def nvlist(thelist, names=None):
      '''
      Given a list of items::
  
          - whatever
          - name1: value1
          - name2:
            - key: value
            - key: value
  
      return a generator that yields each (item, key, value) tuple, skipping
      items that are not name-value's(dictionaries) or those not in the
      list of matching names. The item in the returned tuple is the single-key
      dictionary.
      '''
      # iterate over the list under the state dict.
      for nvitem in thelist:
          if isinstance(nvitem, dict):
              # then nvitem is a name-value item(a dict) of the list.
              name, value = next(six.iteritems(nvitem))
              if names is None or name in names:
                  yield nvitem, name, value