This operator is now able to map numbers to output ranges as well as colors,
making the stretch operator unnecessary. Also allows giving multiple stops,
like in Mapbox style spec.
It is now possible to specify a type hint when parsing an expression, which
helps determine the output value type.
When no single output type can be inferred, an error is thrown.
For strings, every literal value will be replaced by a number and a map of
these associations will be kept in the parsing context, which is passed
recursively.