Corrected compare method to obey Order contract to return only -1, 0 and 1.
Calling java.lang.Integer.signum and casting primitives directly for speed.
Calling directly Java's compareTo, which obeys the -1/0/1 Order.compare contract.
Law: Signed.signum(a) returns -1/0/1.
Law: Signed.sign(a).toInt == Signed.signum(a).
Merge pull request #301 from denisrosset/topic/bugfix-compare

Corrected compare method to obey Order contract to return only -1/0/1