move this to more structured pattern.
lets make this a real provider.
greatly simplify this. execute subclass based on install type. need to update resource to match.