More rational type support work

Moved the long division calculation into its own function, fixed a
carry bug in it.  Added a third element to the returned list, a number
which is 1 if the least-significant digit in the returned list of
digits was rounded up to reach that value, or rounded down.  This is
of interest when the least significant digit is 5, and further
rounding is required.

Wrote a function to perform iterative rounding of the digital
representation of a ratio, correctly.

Added functions to perform the equivalent of ~E and ~F format
operations on rational numbers, with no loss of precision or accuracy,
in a format compatible with the behaviour of the HP-67 calculator.