Fix range inference for division

Use range adjusted to not have 0 as a limit instead of original rhs range.

Handle situation when rhs can't change sign because both its limits
are positive or negative differently, to avoid a problem with rhs ranges
in form (-n; 0): such ranges are adjusted to (-n; -1), splitting which into
two semi-ranges results in an extra (1; -1) == (1; 1) range.
Merge pull request #80 from mpeterv/fix-range-inference

Fix range inference for binops