Mutating objects/arrays in-place, rather than cloning

To fit better with the notion of a "traversal", property values (for both objects and arrays) are being modified in-place. (see issue #2)