Bug fix: Whenever a method of an object call was evaluated on an object
stored in a local variable, the result of the method call was always the
updated object and not the return value of the method. This has been
fixed.

The reason for this behavior was that the function for updating the
local variables had not been designed to return arbitrary values
resulting from an update -- in this case, the return value of a method.
These functions were defined to always return the exact value updated.
Since a method call of an object updates the object in place and returns
an arbitrary value, the functions in the "Dao.Stack" module were not
suitable for instantiation of 'Dao.Interpreter.updateIndex' in the
'Dao.Interpreter.ObjectLens' class. To solve this problem, I modified
the "Dao.Stack" module so now updates the value in the stack in-place
and also returns arbitrary values produced by the update. This allows
the caller to decide what value should be returned, be it the value
updated, a combination of the value updated and some other value, or
nothing at all.