Got sick of proxy issues on Windows - added a new Windows-specific downloader that uses WinINet
Added some docstrings to various downloaders
Refactored RepositoryDownloader into BackgroundDownloader, changed repo download strategy to one downloader per domain
Added caching functions to interact with both cache and settings at the same time