Initial work on prime factorization.

This commit adds spire.math.primes.Factored, a data type representing
the prime factorization of an integer. It also adds three algorithms
for factoring an arbitrary SafeLong:

  1. Trial division (worst)
  2. Wheel division (about x1.5 faster than Trial division)
  3. Pollard Rho (fastest)

We cheat in Pollard Rho and use BigInt#isProbablePrime

None of these algorithms is state-of-the-art and they all do best when
some of the prime factors are small. So the worst-case is when you
have a composite number with two prime factors of roughly equal size.

On my machine using Pollard Rho a 20-digit composite with two 10-digit
prime factors took about 500ms to factor, but a 40-digit with two
20-digit prime factors didn't complete in the time I was willing to
wait.
It would help to add the primes directory to Git.
fix annoying isValidInt bug
Work on optimizing Pollard Rho.
Clean up, refactor, rename Factored to Factors
Bugfixes, additional methods, etc.

Fixed division, modulus bugs. Also added gcd, lcm, and a bunch of
methods taking SafeLong instead of Factors.
Package renaming, and some comments.
Add bitLength and isProbablePrime to SafeLong.
Clean up and resturcture spire.math.prime package.
Add tests, fix some bugs.
Update documentation.
more revisions to the spire guide
even more guide updates
Flesh-out FixedPoint a bit.

This commit adds some comments, and also improves the toString
experience when using FixedPoint values.
Setting version to 0.7.0
Setting version to 0.8.0-SNAPSHOT
Add description of Algebraic to GUIDE.
Setting version to 0.7.1
Setting version to 0.8.0-SNAPSHOT
update readme for 0.7.1