Add path package

For testing purposes we need to get the long path of filesystem paths
on Windows machines. By default non-UTF8 syscalls will return the short path
(Ex:"C:\PROGRA~1" instead of "C:\Program Files"). This package exports
previously private functions used in the symlink package to determine the
long path of a file/directory.
The SamePath checker idea is a good one, it can use os.SameFile under the hood, and that looks like it's path-independent, at least on linux and windows.  It's probably more robust than a simple string check, too.