(Binary Analysis) Slight change to sort order for commutative operators

* Arguments for commutative operators like bv-xor are sorted more deeply
  than before. For example, the "extract" operands in this expression:
    (bv-xor (extract 0 1 x) (extract 1 2 x) (extract 2 3 x) ...)
  are sorted according to their starting offset: 0, 1, 2, ...

* logical shift operators shl1, shl0, shr1, shr0 use the additive-nesting
  simplification that asr uses, namely:
     (shift a (shift b c)) ==> (shift (add a b) c)