code: async function getSubtitlesByFilename (filename) {
    // TODO: revamp this + add unit tests
    return getSubtitlesList(filename)
      .then(parseSearchResults)
      .then(getBestSearchResult(filename))
      .then(getSubtitlesPage)
      .then(parseDownloadLink)
      .then(downloadZip)
      .then(extractSrt)
  }
docs: Get subtitles for the given filename.
  
  @param {string} filename
  @returns {Promise<string>} the subtitles, formatted as .srt