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.
I think a `filter_map` + `sum` would be better here.