magit.el: require tramp

Previously we relied on autoloads to avoid loading it when not
necessary.  But the code that uses tramp is used so often that
it makes little sense to not load right away.
magit-{git-dir,get-top-dir}: don't expand-file-name path by git

Don't apply `expand-file-name' to the filename returned by git.
It is already expanded.
magit-file-name-tramp-remote: new function

Use it in `magit-git-dir' and `magit-get-top-dir' to prepend the
remote part of `default-directory' (if any) to the filename printed
by `git rev-parse --git-dir|--show-toplevel' before returning it.