fails:Rational#** when passed [Rational] converts self to a Float and returns it raised to the passed argument
fails:Rational#** when passed [Rational] returns NaN when self is negative and the passed argument is not 0
fails:Rational#** when passed [Integer] returns the Rational value of self raised to the passed argument
fails:Rational#** when passed [Integer] returns Rational(1, 1) when the passed argument is 0
fails:Rational#** when passed [Float] returns NaN if self is negative and the passed argument is not 0
