Move all the update logic to the downloader.