Do we still want the cache inside of the download client's logic?