color operations clamp if parameter is a Dimension

hue, saturation, lightness, alpha, and luma functions now accept a dimension OR a color. 
If a color is passed in the functionality is the same. If a dimension is passed in, it is 
clamped and the clamped dimension is returned. Hue will clamp by wrapping numbers outside 
the 0-360 range. Saturation and lightness accept a percent or number and will clamp output 
to be a percentage of 0-100%. Alpha and Luma both clamp the returned number to 0-1.

This is needed because in building a site that is theme-able by end users, I need to do 
calculations, e.g. hue(@baseColor) - hue(@endUserColor), that will end up "out of range".
When I pass the calculated "out of range" dimensions to hsl() to create my new color things
do not turn out as expected. This pull request would allow me to do something like 
hue(hue(@baseColor) - hue(@endUserColor)) to clamp the result of the subtraction.

A different solution than this one would be to clamp all values passed into hsl() and
similar functions, but I wasn't quite sure how to do that.