Implement hue()/saturation()/lightness() (#12757, #10311)

This change also changes the precision at which HSL values are
handled (now float, fixing some old rounding problems) and
rounding of float values in the output to match sass-lang.

Change-Id: I3945e34f9c68c37b12be09202f8e7051ebf42f25