Fixed bug in Rational.precision

I'm sorry, but I left an unhandled bug in it. I'm ashamed...

Added negative cases to some more tests.