Added DownoadModules() to ModuleInstaller

Which is great, except only our upgrade method calls it, so our
architecture here sucks. Everything should be calling it.