Some property subtypes: LazyProperty, TypedProperty, SetOnceProperty