Async file downloader