Event handlers that marshal the invoke back to the SynchronizationContext on which the registration occurs. This is helpful in data-binding (WPF, UWP, etc) where INotifyPropertyChanged needs posted on the UI thread by a shared library that doesn't have a Dispatcher.
Includes a built-in INotifyPropertyChanged
implementation BindableBase to serve as an example and common base class for view models.