Using HashTable in ObservableDictionary
misc cleanup
View stuff, controls
Using constants for change events etc