fails:Rational#** calls #coerce on the passed argument with self
fails:Rational#** calls #** on the coerced Rational with the coerced Object
fails:Rational#** when passed Rational returns self raised to the argument as a Rational if possible
fails:Rational#** when passed Rational returns self raised to the argument as a Float if necessary
fails:Rational#** when passed Rational returns a complex number when self is negative and the passed argument is not 0
fails:Rational#** when passed Float returns self converted to Float and raised to the passed argument
fails:Rational#** when passed Float returns a complex number if self is negative and the passed argument is not 0
fails:Rational#** when passed Float returns Complex(1.0) when the passed argument is 0.0
fails:Rational#** when pass Integer returns the Rational value of self raised to the passed argument
fails:Rational#** when pass Integer returns Rational(1, 1) when the passed argument is 0
