Color functions

All of the color functions are now implemented and tested using the latest test-cases from less.js. [#66]

I am going to go on to the other functions to wrap this up.

Note this also includes the fix described in [#90]. If that isn't the right approach to that problem let me know and I can exclude it from this pull-request. That fix was needed to pass tests due to the implementation of the alpha function that was used in a filter (as referenced in [#90]). It would be possible to solve this another way, like contrast() has solved it by silently failing if the arguments are of the wrong type... I believe that filters are always filter: rules, so that should work safely!