Optimization for mutable updates

If the underlying JSON represantation is fundamentally mutable, then only the leaf node is
mutated, rather than every node en route too.