Implement basic logical operations on predicates.

If we're going to be having predicates about it'd be good to be able to perform
logical operations on them. This commit provides the equivalent of NAND, NOT,
AND and OR.

Signed-off-by: Brian L. Troutwine <brian@troutwine.us>
Merge pull request #11 from blt/basic_logical_ops

Implement basic logical operations on predicates.