(eshell-hist-initialize): When in the minibuffer, use the global value
of `eshell-history-ring', and never save it to disk, or ask to save it
to disk. This allows users of session.el to control whether its
global state should be persisted or not.
(eshell-add-command-to-history): Don't write Eshell's history out to
disk, let the governing mode control that upon exit.
(eshell-add-input-to-history): New function, with most of the code
from eshell-add-to-history.
(eshell-add-command-to-history): New function, to record in
eshell-history the commands run via eshell-command.
(eshell-add-to-history): Call eshell-add-command-to-history to do most
of the work.