improve handling of help buffer

Kill the buffer and restore previous window configuration when user
made a choice or aborted with C-g.  Don't use the (help-buffer) as we
shouldn't kill that.  Add optional BUFFER-NAME argument to allow
setting an appropriate buffer name, and optional INITIAL-HELP to show
the help buffer right away without the user having to request it
first.
use help-print-return-message

instead of obsolete alias print-help-return-message.
fix typo in history
allow specifying help text
add empty line at end of help text

This is useful when the user makes an invalid choice as that likely
causes the minibuffer to become two lines high.  Without this the last
choice would be invisible.