BaseViewModel and DelegateCommand