more improvements to complex ^, for #3246
also a fix to Rational->Int conversion