Fix colours as map keys

This PR fixes the treatment of colours when used as map keys. 

The current problem is named colours like purple are treated as identifiers meaning they're not evaluated and coerced into colours. This causes issues when doing operations that expect a colour like `map-get($map, purple)`. In this case the argument `purple` is treated as a colours but the map key `purple` is a string which causes the lookup to (correctly) fail.

Fixes #652.