move remote file hashing into PathInfo
move stat() into utils.remote
integrate stat() into PathInfo