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.
EVERYTHING
diff -r ec612a6291f1 alpha/one
--- a/alpha/one
+++ b/alpha/one
@@ -0,0 +1,1 @@
+1
diff -r ec612a6291f1 beta/two
--- a/beta/two
+++ b/beta/two
@@ -0,0 +1,1 @@
+2
BETA ONLY
diff -r ec612a6291f1 beta/two
--- a/beta/two
+++ b/beta/two
@@ -0,0 +1,1 @@
+2
INSIDE BETA
diff -r ec612a6291f1 beta/two
--- a/beta/two
+++ b/beta/two
@@ -0,0 +1,1 @@
+2