Start using variables for colors

I've only started on this for the colors present in landcovers.mss, but it will unlock tasks like https://github.com/gravitystorm/openstreetmap-carto/issues/56 and https://github.com/gravitystorm/openstreetmap-carto/issues/57 (or at least make them much much easier to implement)

I also recognize that this is somewhat against the spirit of this bit from the README: 

>Care will be taken to not get too clever with variables and expressions. While these often make it easier to customise, experience has shown that over-cleverness (e.g. interpolated entities) can discourage contributions.

While I don't want to discourage contributions, I think making the style more structured + logical is important. Keeping consistent colors across thematic features will be important for making the map design flatter and more legible as we progress on Version 3 improvements. 

All that being said, I'd love to hear reasons why this is might hurt contributions.