flexible font size

*This is rebased against #682*

This does some work to allow us to change the font-size more easily.

-  It provides variables so the font size can be set in a single place.
-  It changes the css code to use relative units like `em` where trivially possible to adopt to different font sizes.
-  It slightly reduces the number of different font-sizes used in the layout.

Changing the units was dull work so there might be some minor regressions.

A next step could be to use keywords (`small`, `medium`, `large`, …) instead of `px` values. That would be an accessibility improvement. However the default settings for these default font sizes are either larger or smaller than our current default font size (13px). So it is not included in this PR.