relax constraint on Pow.as_numer_denom

Previously, if i had an integer assumption (x**-i).as_numer_denom()
would not give (1, x**i).
add Morrie pattern recognition as TRmorrie
update FU definition for new routines
edit docstrings and add tests