ViewModelBase : Inject IViewModelServices in constructor instead of property.
Call Initialize on chidren VM if the viewmodel is already initialized
Adding ObservablePropertyBeforeSetterInterceptor and ObservablePropertyAfterSetterInterceptor,
They add the ability to execute an action before of after the value of an observable property changes.
Ovm support cancellation of previous execution