Moves test workspace to avoid unnecessary copying
Ensures that symbolic links are copied verbatim and not dereferenced.

The code will make an attempt to do a unix style "cp -a" when a
request to copy a symbolic link is made on platforms prior to
Java 1.7.

The code uses Java reflection to detect and access the Java 1.7
specific methods.