Update visible region with insert/erase delta

Adding a callback to the current views buffer allows the visible region
to update based on the delta of inserted/erased characters. This
prevents characters disappearing at the bottom right of the visible
region when typing.

This fixes #230.