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
hg init a
cd a
echo a > foo
hg rm foo
hg add foo
hg commit -m 1 -d "1000000 0"
hg remove
rm foo
hg remove foo
hg revert --all
rm foo
hg remove --after
hg commit -m 2 -d "1000000 0"
hg export --nodates 0
hg export --nodates 1
hg log -p -r 0
hg log -p -r 1
echo a > a
hg add a
hg rm a
hg rm -f a
echo b > b
hg ci -A -m 3 -d "1000001 0"
echo c >> b
hg rm b
hg rm -f b
cd ..
hg clone a b