Allow subclassing of HarnessViewModel


Allow subclassing of the HarnessViewModel with an overridable initialize Task, much like we can subclass the DialogHostBase and MessageBoxBase classes. This would allow us to bypass the StartRunTimeAsync issue and also allow us to do other initialization tasks such as populating our lookup cache.Either a busy indicator could be used, or the ViewModels could not be bound until this has completed.The downside with this is it requires you to specify a new view, unless you have some special ViewLocator logic.