experimental changes (hacks) that help solving
exists-trace goals

Conflicts:
	lib/theory/src/Theory/Constraint/Solver/CaseDistinctions.hs
Cleandot: Making BNF even more loose to trigger less errors.

Note that this BNF is imprecise in the sense that we don't have explicit
expanders for strings that describe rules, which we should have. This
current version works just fine, but the mismatch between the names in
the BNF and the intended meaning of the strings may come back to us
later.  So at some point this should be cleaned up.
Cleandot: Catch more BNF mismatches by forcing match to the end of the string.

Previously, some strings may have been accepted even if they couldn't be matched,
just because a prefix matched. We no longer allow this.
Cleandot: Improving the debug mode log output.
Cleandot: Improving test script.
Cleandot: allow for more abbreviations by default.