Removing arithmetic legacy code and unifying functions.
Code cleanup.  Reducing misc. warnings in arithmetic.
More misc. arithmetic cleanup. Removing unused files and functions. Also removing an ugly forward declaration that was needed to get error set bound information on basic variables.
Fixing compilation of unit tests. These problems were due to splitLemma() being pure virtual.