correct property detection policy
support properties from super classes
handle boolean properties correctly