Basic addition of text to pdf.
Increase text size and show in red
Reduce number of spurious matches by not matching within drawn lines
Annotate pdf with matched letters.
Change origins to align text better

(I haven't gone through with OriginView again, but I think it might be
unnecessary using the new convention, except for chars like ')
Calculate scale of matched characters

Also adds filtering on inconsistent scales within chars. Catches some
things like spurious Xs and +s in various symbols.
Capture remaining characters: R, F, Y, K, J

Requires machinery for changing scale of a sigil since these are at
different scales within P1318-005a.pdf.
Slightly increase tolerance

This matches the 3 at the start of the date at the bottom left of
P1318-005a.pdf.
Operate on all pages

(Currently does nothing but mark /s and Vs in the CC logos, probably
since the page orientation is hardcoded and doesn't work on the first
page, which is portrait instead of landscape).
Handle the pygame close button.
Use Rotate setting from PDF page dictionary rather than hardcoding.
Add a sketchy filter for removing underscore/hyphen matches on lines used for drawing rather than letters.
Improve comments in scheming.py
Prepare to fix annotation by moving text_to_operations inside SchematicReader and adding a utility function to invert a transformation matrix.
Do some of the work I've made for myself

- fix y flip in scheming.json by inverting y in ops and origins
- fix y flip in zoomview by applying it where we convert between page
  and screen coords
- fix y flip in pdf.py where we convert coordinates back for insertion
  into the content stream
Use a better font for annotations

The new font is copied from a PDF I generated from Google Docs. It is
added to the resources of each page before the text operations are
added.

Unfortunately since this new font is a CID font the text is specified in
CID indices instead of ASCII characters, and I haven't worked out the
conversion between these so it's hardcoded in a dictionary I generated
by looking at the internals of font_donor.pdf. TODO: fix hack :D
Fix orientation of annotations on portrait pages.
Allow subclasses of zoomview to handle keyboard (and other) events.
Fix scale handling in OriginView

Also allows saving scheming.json by pressing S in the viewer.
Add benchmark mode for sigil matching

Also make pdf path optional