[BUG #8471] store init value on property definition
[BUG #8471] fixed test
[BUG #8471] store property value before executing the apply method
[BUG #8471] throw if a property definition would override a method