I had to update the APIs for 'Dao.Interpreter.DaoFunc' and
'Dao.Interpreter.callCallable' to allow for functions to update their
"this" variables in place. Before this update, it was not possible for a
built-in method or a function defined at runtime to modify object values
stored within a "this" variable. Now they can be updated (operated on
with side-effects) by member methods. However it is not a really good
implementation of object-oriented programming. The object value returned
by a function call can itself have it's member methods invoked, but the
return value is not modified with side effects. Side effects are lost
once the member method returns. It isn't possible to do this currently
with the Dao runtime's reference model. I may change this in future
versions of the Dao programming language.