Bug 338010 - Resource.createLink() does not preserve symbolic links

The fix replaces canonicalization of locations of workspace, projects
and linked resources by case normalization that preserves symbolic
links. This case normalization is done by a new method FileUtil.realURI,
which is similar to
java.nio.file.Path.toRealPath(LinkOption.NOFOLLOW_LINKS) in Java 1.7.

To handle aliasing in the presence of symbolic links FileStoreRoot class
was modified to keep two versions of the location, one with symbolic
links preserved and another one with symbolic links resolved. The second
version is used by FileSystemResourceManager.allPathsForLocation().

Change-Id: I14ba360c69f0ff0003304ec60fb34e6bd1de364e
Signed-off-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Ensure test file does not exist before and after test

Change-Id: I75e4213d6bef96cb5ee0c4d523327e82cc3e393f