RationalNumber class