Algorithm improvements and UI changes

Improvements to algorithm, interpreting double numbers etc.  Include Web
UI and an ExpressionBuilder class to construct an expression using a
calculator style UI.