configurePainter refactoring: The intent of the previous implementation had been mudded and was undocumented. For better optimization and maintenance the configurePainter method is split into three variants: configureForOutlinePainter, configureForInlinePainter and configureForLabelPainter. The code is documented and optimized.
TODO:
- move the save() and restore() methods out of the individual
calls to embrace all calls of outline, inline and label painting.
- refactor the drawLabelForPolyline method rely on fontsize
rather than taking a full Pen.