Slightly more abstraction, easier to follow code.

Also more efficient. And also more correct. Or at least more Emacs-like, ergo
less surprising to a died-in-the-wool Emacs user like myself.
Wired up history for mini-read mode.

Woo.