Note: you cannot do something like this on bound trees:
Data.obj.baz = { abc:"changed", def:"changed" };
as 'obj.baz' will be replaced by unbound object(s).

In order to update deep hierarchies and keep them bound use Object.extend method (defined in +plus.tis)

number of changes in 'obj' tree:
obj.baz.abc value