Fix a compiler warning.
Fix another couple of compiler warnings.
Break the reorder_bbdd stuff out of expressionevalmap and into its own file.
Whoops, forgot a git add.
Having just converted from percent to permills, I've changed my mind.
Convert back.
Unbreak ec_driver.
Update tests for renaming of enforce_crash and ced_to_cep.
Refactor a little.
Another bit of refactoring.
More refactoring of expressionEvalMapT's constructor.
More refactoring.
Rework expressionevalmap so that it keeps the side condition in a
reordered_bbdd almost all the time, rather than constantly converting
back and forth between the two representations.
Abstract up the interpreter's access to the simslots array a little.
Rework the way messages work so that they synchronise everything
across, rather than just fields nominated in the payload structure.
We no longer use the content of HB messages.  Stop generating it.
Minor improvement to heuristic simplifier: turn k * x == k * y into
x == y if k is small.
Another tweak to BDD quickSimplify: turn downcasts of GETs and LOADs
into just GETs and LOADs at the smaller type.
Pull conversion of the side condition to a reorder BBDD out of the
expression eval map and into enforce_crash proper.
Redo the HB slicer to use BDD re-orderings, which have an exponential
worst case, rather than the exhaustive thing, which has an exponential
best case.
Avoid a silly assertion failure if a thread goes to the bound-lls-exit
state at an instruction with stashes.