Getting utf8 text editing working (and learning how utf8 works in the process). Still need to implement fallback fonts - this is using NotoSerif, so it does a decent job but not everything has the real glyph. Currently chasing down all the places where I need to convert from a byte offset to a rendered glyph index. Next time, I'm gonna implement everything with utf8 in mind up front.