keyboard: Support `page.selection.text`
keyboard: Support `page.selection.text`

Typically the on-screen keyboard's FrameObject finds the *region* of the
current selection, and from that calculates what the letter is. It's
useful to expose the region to the user, mostly for debugging. It's
convenient to return both as a `(text, region)` namedtuple instead of
defining separate properties ("selection_region" and "selection").

In future we might even standardise this by providing `stbt.Selection`
which would be a namedtuple type or even a FrameObject?

stb-tester/stb-tester,stb-tester/stb-tester,stb-tester/stb-tester,stb-tester/stb-tester