Glyph indices now typed distinctly from character codes#

Previously, character codes and glyph indices were both typed as int, which means you could mix and match them erroneously. While the character code can't be made a distinct type (because it's used for chr/ord), typing glyph indices as a distinct type means these can't be fully swapped.