magit-log: add forward compatibility kludge
with-editor-export-editor: new command

Add new command `with-editor-export-editor' which allows setting
the editor for subsequent commands in `shell-mode', `term-mode'
and `eshell-mode' buffers.

Also add the variants `with-editor-export-git-editor' and
`with-editor-export-hg-editor'.

Also add the utility functions `with-editor-emulate-terminal'
and `with-editor-read-envvar'.

This commit is a joint effort between Philippe Vaucher and me.
with-editor-async-shell-command: new command

Add new commands `with-editor-async-shell-command' and
`with-editor-shell-command', as well as `shell-command-with-editor-mode'
which makes regular `async-shell-command' and `shell-command' similarly.

Add utility function `with-editor-shell-command-read-args' and advice
`shell-command'.
Merge branch 'n/shell-with-editor' into next
magit-log-read-revs: also support comma as separator
add Package-Requires header keyword
with-editor: depend on version 24.* of Emacs
(magit-process-yes-or-no-prompt) Save match data during prompt.
magit-request-pull: read START and END from user
popups: always display switches in a single column
magit-popup-{describe-function,woman}: use empty display-buffer-alist

See #1641.
Fix travis : git-{rebase,commit}.el and with-editor.el are already in magit
Merge pull request #1642 from YoungFrog/patch-1

Fix travis : git-{rebase,commit}.el and with-editor.el are already in magit
Merge pull request #1640 from YoungFrog/next

(magit-process-yes-or-no-prompt) Save match data during prompt.
magit-process-yes-or-no-process: cosmetics

And no, I am not actually claiming that this looks better.
magit-section-{forward,backward}: improve doc-string
magit-section-show-headings: fix typo in doc-string
magit-put-face-property: return the overlay
magit-section-make-overlay: use magit-put-face-property
magit-section-goto-successor-1: cosmetics