Configured downloads using requests, caching and logging.
Replace urlretrieve library with requests, to be able to download the non-unicode files.
Added a check to prevent downloading files that are already on the output folder.
Added a logging option to write to a file download errors, files already downloaded, etc.