REF: put downloader into seperate file