added the logical operations (and, or, not) and associated tests