Fix handling of paths when run outside the repo.
The main problem was that dirstate.getcwd() returned just "",
which was interpreted as "we're at the repo root". It now returns
an absolute path.
The util.pathto function was also changed to deal with the "cwd is
an absolute path" case.
#!/bin/sh
mkdir r1
cd r1
hg init
mkdir a
echo foo > a/f
hg add a
hg ci -m "a/f == foo"
cd ..
hg clone r1 r2
cd r2
hg mv a b
echo foo1 > b/f
hg ci -m" a -> b, b/f == foo1"
cd ..
cd r1
mkdir a/aa
echo bar > a/aa/g
hg add a/aa
hg ci -m "a/aa/g"
hg pull ../r2
hg merge
hg st -C