Handle BigDecimal Ranges

Comparing a BigDecimal to `Float::INFINITY` throws a `FloatDomainError: Infinity` exception in ruby MRI 1.9+ and a `TypeError` on 1.8. This causes the comparisons in `Arel::Predications#in` and `#not_in` to fail when using BigDecimal values, which can often happen when using PostgreSQL and ActiveRecord, as AR casts `numeric` values in PostgreSQL to BigDecimal.
The generated SQL would still be the same though wouldn't it? In your example you've changed `>=` to just `>`, but shouldn't the generated SQL still be `>=`? If so, I'll just add the test and re-push.