working downloader with downloading in new thread