Add support for outlines on path layer strokes
In Maps when we render path segments for public transit and the color of line (in case the data provides color information and the color is has a luminance over a certain threashold we add a dark outline to make it better recongnizable. Currently with libchamplain, this has been implemented in a rather hacky way where we keep an extra set of path layers for the outlines which are set with a width two pixels wider than the regular one, and this is added before the regular one, so that they are drawn first and then get overdrawn (with thinner) lines of the main color.
It would probably be cleaner to support this straight in ShumatePathLayer.
There could be some extra properties:
- outline-with: Width of outline (default 0: no outline is added)
- outline-color: Color to draw the outline (when applicable)
This could probably also be useful for the turn-by-turn paths (which currently uses a blue color, that could be hard to spot when a path runs over a bridge, for example.
Implementation-wise, maybe the easiest would be to draw the stroke with the outline color first (when outline is set) at strok-width, then draw the stroke again the base stroke color at strok-witdh - 2 * outline-with rather than trying to draw the "outer" and "inner" outline strokes separatly.