Add SupSub LaTeX test case #test
Fix typo in comment #comment #typo
SupSub::contactWeld needs to call .remove()

otherwise won't call dispose, minor memory leak #fuckManualMemoryManagement
Add empty cases to SupSub test case #test
Add writing empty SupSub's test case #test
Improve cursor edge case after .write('^2')

For example, if the cursor is just before a superscript:

    x|^n

and you .write('^2'), they get "contact welded":

    x^{2n}

but the cursor should still be right of the thing just typed, and left
of the stuff originally to its right:

    x^{2|n}

contactWeld now takes an optional cursor, which will be checked if the
above special case applies and needs to be put anywhere special.
Only Controller::writeLatex passes in the optional cursor (to
MathElement::finalizeInsert, which passes it straight through to
.postOrder('contactWeld', cursor). MathCommand::createLeftOf previously
passed in an vestigal, ignored cursor to .finalizeInsert(), now it is
important that createLeftOf NOT pass in a cursor, because createLeftOf
calls .placeCursor()).
Fix LaTeX with 3 alternating SupSub's in a row

Tree was being left malformed by .addBlock, but it doesn't matter unless
2 SupSub's are welded and then are welded into a 3rd, resulting in
both a .sub AND a .sup being welded away.
Fix typing and writing LatexFragment's
Add TODO comment to .supsub/.fraction CSS #comment