Throw an ArithmeticException when Natural - Natural is illegal.

This mirrors how Haskell treats it, and also how division is treated.
We may want to consider ways of doing division and subtraction that
return an Option as well.

Fixes #113