Prevent searching file system multiple times for package file

The file system was being queried multiple times to find the Package file, once in the `isPackageAt` function and in the Package `constructor`.  I changed `isPackageAt` to `findPackageFile` which returns the file name using the `Path struct`.  If the file was found the caller can pass the file name to the Package `constructor`.