docs: def serialize(d):
      """
      Attempts to serialize values from a dictionary, 
      skipping private attrs.
  
      :param d: A dictionary of params to serialize, 
              typically cls.__dict__
      """
      ret = {}
      for k,v in d.items():
          if not k.startswith('_'):
              ret[k] = str(d[k])
      #ret['__class__'] = obj.__class__.__name__
      return ret