Revert "Merge branch 'dalen-xor_operator' closes #1436"

This reverts commit 285bc8c85b5e667d7293e640547aac3bbde75c15, reversing
changes made to 47771e2892182fe78c34c55c5d433f16d6bb34d1.

This patch is being reverted due to the following concerns raised on the
pull request comment stream:

XOR is also done with the same precedence as OR - this is has some
effects:

    true or false xor true == false
    false xor true or false == true

Was this intentional? I think this is going to make people confused, as
opposed to setting the precedence of XOR to be lower (or higher) than OR
to have a clear order of evaluation.

Also, "Hate to be picky, but this is not 100% backwards compatible. If
someone used a bare word xor in their manifests this would now not work,
if someone has written an xor function it is now not callable. If I
remember correctly using keyword as name is not supported for every
construct."