Use the Java 7 diamond oeprator to cleanup the code.
Remove some redundant comparisions.
Two empty sets do intersect.
Reduce greater-than and greater-than-equal to less-than and less-than-equal.
Stronger duplicate detection.
Optimize cardinality for arrayToSet.
Fixed definition of intersects to an empty intersection.
Minor performance improvements.
Better coalescing of member and not-member.
Remove unused code.
Coalesce not-implies.
Compile arithmetic constraints now all based on the same code.
Fixed for checking duplicates with constants in the solution.
Fixed reference uniqueness when not enforced by symmetry breaking. Removed redundant enforcement by reference uniqueness and symmetry breaking.