ACCUMULO-2061 Initial implementation to remove instance.dfs.dir from usage of instance.volumes

The value of instance.volumes, when provided, appended the value of
instance.dfs.dir to each configured volume which was unintuitive. It is more
straightforward to use each volume provided as-is instead of appending
on some more cruft.
ACCUMULO-2451 Update the data version on all volumes instead of just one
ACCUMULO-2061 Add comments, javadoc and other cleanup
ACCUMULO-2061 Propagate errors on delete or mkdirs failure.
ACCUMULO-2061 Only append a trailing slash when one doesn't exist on the base dir
ACCUMULO-2061 Use URI instead of FileSystem as the key to find correct Volumes and ensure that absolute URIs
are still valid even after they are not configured.

This will help ensure that FileSystem implementations' hashCode and equals don't
have the potential to collide but still provide unique access back to the Volumes
contained in the FileSystem. Added tests for the NonConfiguredVolume and also
for the no-longer-configured volumes.
ACCUMULO-2061 A few more minor fixes from reviewboard.

Fixed a PrintInfo comment. Expand the VolumeImpl.isValidPath javadoc
and implementation to be more encompassing. Suppress warnings in VolumeIT.
Remove implementation of isValidPath from NonConfiguredVolume as it
could be misleading.
ACCUMULO-2061 Co-locate volumes with the MAC dir

Losing the volumes on test failure sucks because you can't validate
if we misplaced a file on the wrong volume in the first place.
ACCUMULO-2061 Fixing whitespace nits
ACCUMULO-2061 Add a utility method to pull a Path with the instance_id

Consolidates a little bit of code in one place.
ACCUMULO-2515 ACCUMULO-2489 Apply same fixes from TableConfiguration to
NamespaceConfiguration

Also switch over TableConfigurationUpdateIT to use SimpleMacIT instead
of doing it itself.