docs: def _iso_handler(obj):
      """
      Transforms an object into it's ISO format, if possible.
  
      If the object can't be transformed, then an error is raised for the JSON
      parser.
  
      This is meant to be used on datetime instances, but will work with any
      object having a method called isoformat.
  
      :param obj: object to transform into it's ISO format
      :return: the ISO format of the object
      """
      if hasattr(obj, 'isoformat'):
          result = obj.isoformat()
      else:
          raise TypeError("Unserializable object {} of type {}".format(obj,
                                                                       type(obj)))
  
      return result