All .ttf files in fonts/ are loaded at startup. The web form now has a
font selector dropdown. Glyph-rendering helpers that previously used
module-level font globals now accept a _FontData parameter threaded
through from generate_svg().
Dockerfile updated to copy all of fonts/ into the image rather than a
single hardcoded .ttf path.