code: public void addFile(String path, long size, file_flags_t flags, int mtime) {
          fs.add_file(path, size, flags, mtime);
      }
docs: Adds a file to the file storage. The {@code flags} argument sets attributes on the file.
  The file attributes is an extension and may not work in all bittorrent clients.
  <p>
  If more files than one are added, certain restrictions to their paths apply.
  In a multi-file file storage (torrent), all files must share the same root directory.
  <p>
  That is, the first path element of all files must be the same.
  This shared path element is also set to the name of the torrent. It
  can be changed by calling {@link #name(String)}.
  <p>
  The built in functions to traverse a directory to add files will
  make sure this requirement is fulfilled.
  
  @param path  the path
  @param size  the file size
  @param flags the file flags
  @param mtime the time