rootof: improve syntax and performance

Use the modulus operator `%` for reduction instead of the `reduced()`
function and use `super(RootOf, self)` instead of `Expr` to forward
exponentiation operations to the parent.

The use of PurePoly objects improves performance slightly.

Some tests were removed since they didn't actually execute the
`_eval_power()` method.