Make Egyptian fractions a little more robust.

Add checking for negative arguments, and arguments > 1

Don't know if this is actually needed; it does help avoid endless loops if you give an improper fraction to some of the algorithms.  Feel free to reject.
Except for this, I'm fine with this function.

But you should rebase this pr.  Squash stylistic commits and so on.