first successful fix for selecting in TextBlocks

changes the contracts of blur, consolidateChildren, and combineDir to
take in the cursor and anticursor so as not to merge any TextPiece's
with a cursor or anticursor between them (as if they were in the tree)

also anywhere the tree is manipulated by the TextPiece tree-monkeying,
the anticursor is checked and possibly updated. There's probably a bit
more of this than necessary, but I was having trouble thinking through
all the possible places the anticursor and cursor could be and, worse,
in the case of the cursor seeking during mouse selection, move.