Fix HasOverriddenProperty, it must returns true if the property value was changed
Add HasProperty, InheritProperty, HasDefaultedProperty and HasInheritedProperty in NdapiObject
Add GetPropertyState
Introduce the ObjectType enum
Add GetObjectType in NdapiObject