fixed implementation of rqft to work for squares, fixed tests

Also added faster is_square function based on a newly added isqrt
function that also works for very large numbers.
created some testing code for miller rabin in c, moved some code useful for qft to a separate file
fixed test code for composites in miller_rabin.py, added seeding to code in frobenius.py
rewrote frobenius code to incorporate all of polynomial and stripped it down to the bare essentials