old_contents: from collections import defaultdict
  
  
  
  # get_args_dict()
  #_________________________________________________________________________________________
  def get_args_dict(args):
      metadata = defaultdict(list)
      for md in args:
          key, value = md.split(':')
          metadata[key].append(value)
      # Flatten single item lists.
      for key, value in metadata.items():
          if len(value) <= 1:
              metadata[key] = value[0]
      return metadata
  
new_contents: from collections import defaultdict
  
  
  
  # get_args_dict()
  #_________________________________________________________________________________________
  def get_args_dict(args):
      metadata = defaultdict(list)
      for md in args:
          key, value = md.split(':', 1)
          metadata[key].append(value)
      # Flatten single item lists.
      for key, value in metadata.items():
          if len(value) <= 1:
              metadata[key] = value[0]
      return metadata
  
subject: Allow for ":" in argument values (only split args on first occurence of ":".