Fix build of a test program.
Support for constant folding the MulU64 op.
Make cross_check_machines timeout after ten minutes.  While I'm here,
pull the TimeoutTimer out to a header so that I don't need to keep
reimplementing it.
Fix a debug message.
Rejigger avail expression analysis to be much more correct.  In
particular, make sure that a load to register X clobbers any copies to
register X, as well as clobbering other loads to X.
Get rid of a completely spurious abort() in cross_check_machines.
More rules for short-circuiting redundant typecasts.
Timeout fix.
Another fix to avail expression analysis.  If we see the statement

Load *(tmpA) -> tmpA

we shouldn't add !BadPtr(tmpA) to the definitely-true condition,
because we've clobbered tmpA by the load itself.
Do a better job of removing spurious atomic blocks early.
The state machine simplifiers are allowed to assume that nothing which
is mapped by the ELF data gets unmapped at run time, so make sure
we don't report any errors when they make sure an assumption.
Fix a use of unitialised memory.
Extend quickSimply's constant folding rules a bit.
Fix a massive bug in the Maybe<> implementation.  It's a bloody good
thing I didn't use this in more places.
Make it a bit more obvious if an optimisation log is dodgy due to a
timeout.
Redo cross_check_machines so that it doesn't need eleventy billion
command line arguments.
Make sure that cross_check_machines uses the same scope to read the
machines as the logger generated when it was producing them.  This
avoids a potential exponential blowup if we decide to re-order the
variables and do it badly.
Make cross_check_machines a bit more timeout-able.
There's a bug in assignFrameIds which means thaht you can sometimes
get Frame-1:-1 in the final machine if you have a StartFunction()
immediately followed by a terminal.  That's completely harmless,
because the StartFunction will be removed from the machine at the
first peephole optimisation, and it's a pain to fix.  Just make it
not screw over the parser later.
Get rid of a spurious cross-check failure by making the cross check
BadPtr rules match up a bit more closely with the simplifyIRExpr ones.