Moving implementation out of Price into FixedPrecision for increased flexibility