Compute nodes text correctly when intersecting a previous change
Compute nodes text correctly when intersecting a previous change

`characterIndexForPoint` behaves incorrectly when passing an extent that
goes beyond the supplied text. This was a problem when computing
`oldText`, because the intersecting change could start after the end of
the input extent and therefore cause problems.

The way we have solved this involves to just use the
currentNode.inputLeftExtent and currentNode.outputLeftExtent, which
already represent the position of the change within the intersecting
change that was spliced previously.

atom/superstring,nathansobo/atom-patch,atom/superstring,atom/atom-patch,atom/superstring,atom/superstring,atom/atom-patch,atom/atom-patch,atom/superstring,atom/atom-patch