Updated math operators so they support various operations like '2 + "a"'
and '10 + #000'.
Moving value type code to Value.
Moved implementations of LESS functions to the value types. Number
related functions to NumberValue, color related functions to Color,
etc.

Added FunctionLibrary to store references to the functions.

Added a UnitValue type that represents units(px, em, etc.) Units are
used as an argument in the unit() function.