Move FileDownloader to its own module and create a new class for each download process