CDB-1788 inverted DatasourceDownloader dependency so gets injected from DataImport and Runner just .run()s it + cleanups and more stuff like modified check working