path: add a method to retrieve a "push variant" of a path
This gets you the same path, but using the `pushurl` as destination.
This opens the way for a lot of different improvements, the one which
interests us is having `peer` objects aware of the `path` they came from.
tests: use an all too familiar executable in test-run-tests.t (
issue6661)
true(1) sometimes lives in /usr/bin/, and so this test fails on such systems.
We also can't use which(1), because it's apparently not POSIX and Debian
complains about it [1]. We also cannot really create a script and chmod +x it,
because this is a symlink case, execbit case is slightly below. So let's use
something that we know is executable, but not hg itself.