Changed ViewModels to implement a base class

The base class should contain all code that is shared across all
ViewModels. Currently there is only a NotifyPropertyChanged, which will
automagically be filled with the CallerMemberName.