A couple of fixes to DSE2 based on diffing it vs. DSE1 (actually most changes are more correct), including making sure stores that cross a tentative check are alive.

Also add the dump code used to produce the diffs.
Fix many buglets in the new TL implementation to bring it closer to the old one's results.

Also patch a significant hole in ordinary LF: base stores were showing through allOthersClobbered when the location was partially overwritten after the clobber. Also fix some mistakes exposed by that fix.
Noticed that I'd broken DIE by introducing a bonus "return false"; fix lots of bugs that became evident when DIE started working again, including tracking indirect users of pointers and making sure not to DIE anything required for unspecialised code.

Also improve DIE somewhat by allowing it to try to collect allocation instructions, which was previously impossible (but the DOT representation made it look like it worked).