Bring precedence of bitwise operators in line with C.

These are inspired by C both in syntax and semantics, so
we should really try to make them act like the equivalent
operators in C.

In particular, &&& > ^^^ > ||| in terms of precedence.

Unlike C, however, we place these operators in the table
such that they have higher precedence than the relational
operators. This is to deal with an all-too-common mistake:

    if a &&& c != 0 do
        ...
    end

If we placed the operators the same place in the table as
C does, this would be interpreted as

    a &&& (c != 0)

which is clearly not what was intended!
Make the xor operator have lower precedence than ||.

It's important to realize that xor has wildly different
evaluation semantics than the other logical operators. It
will *always* evaluate the LHS and RHS. Therefore, it's a
bad idea to group it with the || operator.