code: func UnpackKVList(list []string, sep rune) (out KVList) {
  	for _, item := range list {
  		idx := strings.IndexRune(item, sep)
  		if idx == -1 {
  			continue
  		}
  		out = append(out, KV{
  			Key:   item[:idx],
  			Value: item[idx+1:],
  		})
  	}
  	return out
  }
docs: // UnpackKVList takes validated list of k-v pair strings and returns list of
  // structs.
  //
  // Silently skips malformed strings. Use ValidateKVList to detect them before
  // calling this function.