Implement LogicalExpression.

I found a few minor bugs from the cps stuff the other day.  Here I implemented LogicalExpression (with tests for short circuit).