Retains information when two constant ranges are xor'd together. This is
only possible if both constant ranges do not range over signage.
Add exhaustive correctness test.
Also remove signage test in binaryXor, as the common bits would be 0 anyway, thus creating a full set regardless.
The call to getSignedMin/Max includes a check of isFullSet and isUpperSignWrapped, which is relevant here, otherwise Upper-1 would not work.