Optimizations for `find /usr`
Optimizations for `find /usr`

Resetting a cell now takes a template. The template is `memcpy`d onto
the cell being reset. This also solves the problem of `Cell.reset()`
being hardcoded to a particular terminal foreground and background.

Scrolling was refactored to need one less branch. There are now
separate functions for scrolling up/down.

Fixes a bug where the first tabstop would not be displayed properly.

`set_char()` code was merged into the handler `input()` method.

jwilm/alacritty,jwilm/alacritty,dannydulai/alacritty,alacritty/alacritty,dannydulai/alacritty,alacritty/alacritty,jwilm/alacritty,jwilm/alacritty