Refactor INotifyPropertyChange further