Switch AbstractChoiceView to use DAOProperty.
Re-write defineLazyProperty to define the property per instance of an object, not per prototype.  Let the definition function return a property definition, not the raw value.