Treat projects in subfolders correctly in `NewFileWizard`

Normally a project is located in the root of the workspace, which would
lead to a physical location like '/workspace/project/file'. But it is
totally valid to have a file in a physical location like
'/worskpace/subfolder/project/file'. It is even possible to have source
folders that are linked resources and can therefore be located anywhere
on the file system. In these cases the wizard did not work correctly.

Internally the wizard was based on `IPath` types which was a problem
because they couldn't handle linked resources perfectly well. In case a
linked source folder points to another folder in the workspace, an
`IPath` object did always point to the real file on the file system. If
the path would have pointed to the symlink there would have been no way
to determine its real location.

To overcome this limitation the `IPath` references were replaced by
`IFile`, which abstracts over workspace files and therefore can
correctly recognize symlinks.

Fixes #1002185
An `IFile` doesn't need to exist, therefore one can see it only as a path (and the implementation should not create the file). I didn't have a better idea on how to name that method.