Adding tests for the previous commit.
Adding demand restart.
Adding a restart test strategy to integers.
Cleaning up the demand restart code.
Fixes for two bugs:

* one that Tim found in model generation for records containing Booleans
* another that the fuzzer found in quantifiers + check-models

Test cases enabled/added for both.
Re-enable predicate subtyping, reversing commit 8f9f549 (needed for Kind integration)
fix for lambdas in relation to subtypes
fixup for miplib trick (related to lambda fix for subtypes)
subrange-related fix
new --tear-down-incremental mode
new --force-logic option that overrides what the input says