Added initial code for yet another path copy
Construct tree
Get and set root node
Add and remove nodes
Copy the path
Renamed package
Added test
Prevent modifications to old code from reverting setRoot
Updated javadoc
Added locking that locks the entire tree
Unlock a holder before going onto the next so that the entire tree is not locked at the same time
Parameterized some of the tests to apply to different tree implementations
Added SPI component implementations for PathCopyTree