code: public static TorrentMetadata create(File parent, List<File> files, URI announce,
                                         String createdBy) throws InterruptedException, IOException {
      return create(parent, files, announce, null, createdBy);
    }
docs: Create a {@link TorrentMetadata} object for a set of files.
  
  <p>
  Hash the given files to create the multi-file {@link TorrentMetadata} object
  representing the Torrent meta-info about them, needed for announcing
  and/or sharing these files. Since we created the torrent, we're
  considering we'll be a full initial seeder for it.
  </p>
  
  @param parent    The parent directory or location of the torrent files,
  also used as the torrent's name.
  @param files     The files to add into this torrent.
  @param announce  The announce URI that will be used for this torrent.
  @param createdBy The creator's name, or any string identifying the
  torrent's creator.