DownloaderInterface becomes a parameter of syncer