logic classes check for Boolean args

And, Or and Not check for Boolean arguments (except  1 and 0)
So something like And(3, x) raises TypeError('Only Boolean arguments supported')