Added a new enum class to help in the observer/observable design pattern  (need to differentiate the different changes possible when setting change and updating)