magit-list-{remotes,tags,remote-tags}: new functions
magit-tag-prune: new command
Merge branch 'n/prune-tags' into next
remove turn-on-magit-{svn,stgit,topgit}

Magit requires at least Emacs version 24.1 and on that version calling
a mode function without an argument never turns off the mode, it either
turns it on or leaves it turned on.
magit-refresh-all: bugfix
define with-current-buffer-window for older Emacsen
magit-checkout: remove "tracking branch confusion"

This is a backport of 9af9551470d1f10295ebd0aa5c1fac079a829e1d from
next, but where that completely removes the ability to create a local
branch whose upstream is a remote branch when using `magit-checkout',
this only removes the unnecessary complications that resulted from a
misunderstandings of what "tracking branches" are.

Similar functionality might later be restored on next.

Also see #1476.
magit-branch{,-and-checkout}: base default name on starting-point

In `magit-branch-read-args' which is used by these commands, read the
starting point first and if a remote branch is chosen use the branch
part of that as the default when reading the name of the new local
branch.

Previously we read the branch name first and then the starting-point,
which I feel is a more natural order (and also how these arguments are
passed to `git branch|checkout').  But doing it in that order did also
mean that we could not provide a default based on the starting point
when reading the branch name, because that obviously meant that we did
not know yet what the starting point was going to be.
Merge branch 'master' into next

Conflicts:
	magit.el

Merge a backport, i.e. drop their side.
magit-discard-files: support deleting untracked directories

Teach `magit-discard-files' and `magit-discard-files--delete'
how to delete directories which only contain untracked files.  We use
`dired-delete-file' to do the job and respect `dired-recursive-deletes'.

Fixes #1489.
magit-mode: make the keymap property non-sticky

Without this the local keymap of the preceding section would be used
instead of no local keymap when we are at the end of the buffer (which
belongs to the root section, which does not have a local keymap).
magit-clone: new command
support git notes

Show notes in commit buffer provided the value of new option
`magit-commit-show-notes' is non-nil.

Add new popup `magit-notes-popup', various commands to manipulating
notes (`magit-notes-edit', `magit-notes-remove', `magit-notes-merge',
`magit-notes-merge-commit', `magit-notes-merge-abort' and
`magit-notes-prune) and set notes references (`magit-notes"set-ref'
and `magit-notes-set-display-refs').

Also add a few utility functions (`magit-notes-read-args',
`magit-notes-popup-read-ref' and `magit-notes-merging-p').
Merge branch 'n/git-notes' into next
when resetting to HEAD~ safe HEAD's message to ring

When `magit-reset', `magit-reset-head' or `magit-reset-soft' are used to
reset to HEAD~, then save the commit message to the message ring used by
`git-commit-mode' using the new function `magit-maybe-save-head-message'.
when rebase stops on a commit select in the status buffer

Add new sentinel `magit-rebase-process-sentinel' and use it for
processes started by `magit-rebase-async'.  After it has run the
standard sentinel it also moves point in the status buffer to the
stopped-at commit.
magit-log-select-mode-map: bind "e" to magit-log-select-pick

To edit a single commit one can first move to that commit in the status
or log buffer and then press "e e e" to edit just that one commit.  If
one doesn't first move to that commit one has to select the commit to
start with in a `magit-log-select-mode' buffer, like

  e e n... C-c C-c e

now it is possible to do this instead

  e e n... e e

which is closer to the recommended way

  n... e e e
magit-insert-rebase-sequence: also insert rebased commits

After the commits yet to be rebased also insert the commits that were
already rebased.  This gives more context and allows quickly splitting
up the stopped at commit by soft resetting to the preceding commit.
Merge branch 'n/rebase-goodies' into next
magit-insert-branch: always mark selected branch