Use correct sign character for negative numbers
Remove 40px font, use 9px instead of 8px

This makes many characters look much nicer
Fix '3' glyph (and refactor genfont.py)

We can now have glyphfiles which fully specify a glyph, instead of
rendering a glyph using pango. This is useful if the renderer produces
small uglinesses due to font size and hinting issues.

Example is the '3' glyph with DejaVu Sans at 9px.