Add a new complete-until command

When binding the <tab> key to the 'complete' command, and pressing <tab>
multiple times, the default behaviour is to cycle through all the possible
options.

This adds the 'complete-until' command, that will not do this, but will
instead, complete until the common prefix, and do nothing more.

This is an alternative to the pull request proposed on pull #974 by @gfxmonk