added `and`, `or`, and `=`

the equality implementation is probably wrong.