The front-end determines information about mouse clicks and motion, and
the terminal handles the actual selection start/extend/dirty logic by
row and column.
While we're in the neighborhood, we'll also rename getbuttoninfo() to
mousesel() which is, at least, less wrong.