avoid needlessly connecting to unrelated tramp remotes

In `magit-save-buffers-predicate-tree-only' avoid needlessly connecting
to unrelated tramp remotes by first checking whether the absolute path
to the top-level of the current directory is a prefix of
`buffer-file-name'.  Only if that is so check whether `buffer-file-name'
is actually directly in that repository (it may also be part of a
submodule or other nested repository.

Fixes #1473.

Suggested-by: Ryan C. Thompson <rct@thompsonclan.org>
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-save-buffers-predicate-tree-only: bugfix

This function might end up being called outside a repository (because it
is used carelessly, see next branch for a better approach) so we have to
make sure it does not try anything stupid in that case.  Fixes #1499.
magit-process-finish: bind message search correctly

Limit the search for the error message to the section of the current
section, as intended.  Fixes #1498.
magit-delete-branch: do not create master branch

Fixes #1501.
README.md: update links

* Gittip was renamed to Gratipay.
* Against all odds we made a 1.2.1 maintenance release.
* To help hyperlink-challenged users the Known Issues
  have been merged into the FAQ.
README.md: wording changes
magit-run-git-gui-blame: fix when linenum is missing

2eb34da broke magit-run-git-gui-blame by erroneously changing the
argument to magit-file-relative-name to be a directory.  This prevented
the linenum argument from being properly populated.
Merge pull request #1530 from aspiers/fix-git-gui-blame

magit-run-git-gui-blame: fix when linenum is missing
magit-revert-buffers: don't use auto-revert-handler

`auto-revert-handler' does quite a few things we don't need, so instead
of using that just call `revert-buffer', `vc-find-file-hook' directly.

Backport of edf2b42ec6c1309402e62e3b307e1656c8f38680.
travis-ci: use generic

See https://github.com/travis-ci/travis-ci/issues/1201.
README.md: fix tarball url
magit-revert-buffers: "reverts" all file-visiting buffers again

This is a temporary kludge, on next I have to find a better solution.
See #1546.
magit-revert-buffers: compare truenames

See #1545.
Make magit-save-buffers-predicate-tree-only more robust

This is similar to the previous commit.  String-prefix-p is a fragile
way to determine if a file is contained in a subdirectory.
(`file-in-directory-p' is normally the right thing to use for that, but
it will hit tramp).  Also see #1545.
Update mastering-intro variable to a not dead link.
Merge pull request #1552 from pskrz/master

Update mastering-intro variable to a not dead link.
revert all recent changes to magit-revert-buffers

This reverts
  140e8239eccb45a5673c770d1f56c01e921ecceb
  febc832cbe12739309c41e453b36067dd4c4bc55
  68af16a2cf1d3a31e90beea80aa97f5ecc9c797e

These changes have lead to a performance regression and while some users
bothered to report it or tweet about it I have so far gotten little help
in the form of replies to my questions or reliable benchmarks.

See #1544, #1545 and #1546.

Note that this reverts changes to functionality which would be
desirable.  Generally I no longer make any functional changes to the
master branch and instead concentrate getting the next branch ready
for merge into master.  I have made an exception here and it bit me.
README.md: mention release has priority over proposed features

Also add a very prominent link to the FAQ.
README.md: fix typo