git-annex internally uses all absolute paths all the time.
For a couple of reasons, I'd like it to use relative paths.
The best reason is, it would let a repository be moved while git-annex was
running, without breaking. A lesser reason is that Windows has some
crazy small limit on the length of a path (260 bytes?!), and using relative
paths would avoid hitting it so often.

I tried to do this today, in a `relativepaths` branch. I eventually got the
test suite to pass, but I am very unsure about this change. A lot of random
assumptions broke, and the test suite won't catch them all. In a few
places, git-annex commands do change the current directory, and that
will break with relative paths.

A frustrating day.
