Draw tab characters

Some support for multi-column characters was already added in #29, so this just utilises that with a few tweaks to support tab characters as well.
Nah, I’m already using `.width` in `char_width` so it’s already ignoring combining characters and so on. `width` is better than `graphemes` for this purpose because it counts characters that take up more than one column properly.