    2004/06/01 1.16 Following excellent suggestions from Mike Schilli detect
    constants with decimal places and convert them to rational fractions,
    thus 1.2 becomes 12/10. The rationale: using fractions avoids loss of
    precision, if you only need approximate numerical results, there is no
    need for symbolic manipulations.

    2004/05/28 1.15 Minor changes to documentation.

    2004/05/27 1.14 Admiring new CPAN Layout: diff+grep. Updated META.yml
    requires/recommends to match MANIFEST. Removed use of Hash::Util as this
    seems to be causing problems with ActiveState.

    2004/05/11 1.13 Memory Leak and exp() problems solved:

    1. Solved a memory leak by using Scalar::Util::weaken(). This has
    reduced memory consumption when running the test cases from 130M to 37M:
    intermediate expressions are now being freed. I believe that this has
    been the source of the erratic failures on various platforms, other than
    my development system, as reported (most helpfully) by CPAN testers and
    a Mac OSX user: these reported errors appear to have been related to
    running out of memory.

    2. Corrected exp(-i)*exp(-i) which was being correctly reduced to
    exp(0), but should have been reduced further to 1, which was causing the
    multiply out of exp(i...) in cot(x) == 1/tan(x) to fail.

    3. Added the != operator, as this simplifies testing with the test
    harness.

    2004/04/30 1.12 Included PREREQ_PM in Makefile as a result of notes from
    automated CPAN testing.

    2004/04/24 1.08 Included test cases in manifest and renamed to .t in
    line with observed practice.

    2004/03/28 Split into three classes. Considerable performance
    improvements. Added standard Perl Test harness. Unfixed power() so we
    are back to constant powers.

    2004/03/14 Fixed power() so that it recognizes constant and variable
    powers. Added TODO List. Finished testSM(): new requirements in TODO.

    2004/03/13 Added change log on esteemed advice of Steffen Müller. Made
    yet another attempt to stop polynomialDivide() from producing an
    infinite series as a representation of a single term. Most of
    mathematics seems to erupt from the division of one polynomial by
    another.

