Extract the contents of the zip file ``filename`` into the
  directory ``root``.

def unzip(filename, root, verbose=True):
  """
  Extract the contents of the zip file ``filename`` into the
  directory ``root``.
  """
  for message in _unzip_iter(filename, root, verbose):
    if isinstance(message, ErrorMessage):
      raise Exception(message)