Create Hg.path type and Hg.pathToString function.

`file` field of Hg.blame record is of Hg.path type now.
Hg.path represents a path relative to repo root.
Hg.pathToString convert Hg.path to absolute path.
Clerk structure is modified accordingly.
Change Clerk.blame to record type.
Fix: Clerk.get should fetch from original file and line number.
Fix: Clerk.list should fetch from original path/line.
Fix: Clerk.list should return current line no., not original line no.