Make espresso script executable
s/num_inputs/ninputs/ and s/num_outputs/noutputs/
Add .p <number of product terms> to output
Add BOOM benchmark Espresso tests
Add default Espresso config to minimization module
Add some comments

Espresso uses:
    D = complement(cube1list(d1merge(sf_join(F, R), nvars)))
rather than:
    D = complement(cube2list(F, R))

There is a comment that explains it as a hack.
Update to PicoSAT version 959
Lint cleanup
Get rid of PICOSAT_IMPORTED global
Use 'is', 'is not' instead of '==', '!='
Handle error from conflicting restrict mapping
Add functions to expr top-matter
Lint cleanup
Add expression assumptions using a context manager

Literal assumptions:

>>> with a, b, ~c:
...     g = f.restrict({})

and

>>> with a & b & ~c:
...     g = f.restrict({})

are both the same as:

>>> g = f.restrict({a: 1, b: 1, c: 0})

Similarly for `satisfy_one`:

>>> with a, ~b & c:
...     soln = f.satisfy_one()
Get rid of assumptions on Expression restrict
Move litmap out of NormalForm classes
Lots of normal form refactoring
Add unit tests for satisfy_one context manager
Patch new yield from statement