improve rendering for text labels

Text labels are now rendered such that the pixels in the texture map
(almost) one-to-one to pixels on the screen. The result is labels that
look sharper. This dramatically improves visual quality of the labels.
Due to rounding, the pixel mapping is still not perfect.
render outline before normal pass

This makes sure labels are rendered "after" the outline. Otherwise
parts of the outline are not rendered when labels are in front.
allow to configure the style of text labels
make sure labels have the correct size when manual AA is enabled
scale line width by upsampling factor

Without this, lines appear thinner when rendered with manual AA.