Why is `Rational(3,1).integer?` false in ruby?