expose dispatch to tests
test parsing
default hashes for input and output
test error handling
add unit parsing
add argument and result conversion
getting big, label sections
retrieve conversions
debug shows inputs and outputs
compute product, cancel units
compute ratios, invert and multiply units
print units in hover and show
coerce sums to later unit
invert factors to apply reverse conversion
add expression evaluation

adapted from https://gist.github.com/Jxck/3462396
add variables to expressions
admit dots in label (for fractional numbers)
separate test traces in log
find variables by partial name
parens in printed units