proper support for both conversion directions ratio object stores the scaling, no need to deduce it through the enum name anymore we still don't really enforce incompatible units, though, but it is unclear at what stage the error should come in