Replace MappingCopySpecVisitor with CopySpecVisitorDriver.

MappingCopySpecVisitor was previously the adapter between the FileVisitor world and the CopySpecVisitor world which created some awkwardness. This allows an upcoming change to make CopySpecVisitor not implement FileVisitor which detangles some things.
Don't have CopySpecVisitor extend FileVisitor.