- Separate out the IValue interface so BaseQuantity and INumber can both implement a common interface.
- Tidy up quantity so we can begin working on the Quantity<T> functionality.