added boolean binary ops only; refactored ^ - methods