Normalizing Number Handling.

This is a collaborative effort between @mintsoft and myself to improve code-sharing between goodies.  In particular, we have created a `GoodieRole` which attempts to standardize how numbers are handled between (for now) Conversions and Calculator.

- identifying "what looks like a number"
- determining which notation was used to enter those numbers
- adjusting that notation to allow for calculations
- preparing numbers for output which match the inputs

For Conversions, this means expanded query coverage by handling European style numbers and exponent-formatted numbers, as well as slightly improved output with better formatted numbers.  For Calculator, it has gotten more focused on its core task, as well as bug fixes exposed by the generalization of the number-handling mechanisms.

This is the first phase which we believe to be ready for integration now. We plan to continue this work by creating more general "arithmetic expression" sharing and perhaps expanding the experiment to other IAs which handle numeric inputs.
Maybe this loop should stop after it's already seen a factor? Typing in `convert 1 cm to 2 mm` would result to an answer of `2 centimeters = 20 millimeters`. Better if we could probably just exit early if the query is anything like this.