Implement boolean expressions.

Make NotExp smarter: reverse double not expression.
Implement VoidExp and SemiBoolExp. Add InvertedCompareExp.
Rename CondExpJoin to CondExp and old CondExp to CompareExp.