Natural is a class that provides a arbitrary precision natural number arithmetic. We can use
this class Natural like a unsigned built-in type, e.g. unsigned int, without length restriction.
We support only one built-in type Digit, because of efficiency and portability. The built-in
type Digit is unsigned and contains
bits. The largest possible built-in number is
.