added an InstallTask abstraction so we can use it to resolve profiles / bundles or copy/change files from inside a profile