Business logic interface refinement

Got thinking about why the professor was stressing differences/uses between interfaces and abstract classes (timing wise) and began thinking the "FileManager" interface was not the ideal place for such specific methods as those I was using to return SwingWorkers. I have refined the "FileManager" interface and added abstract classes "BasicFileManager", which provides default implementations for the "deletePathname" and "openPathname" methods, and "FileManagerForConcurrency".  The later extends the first and provides definitions for what is now the (renamed) "pathnameCopyProvider" and "pathnameCopyProviders" methods, which return one or more SwingWorkers to handle potentially long-running file copy operations.

Hoping this is more inline with expected uses for interfaces vs. abstract classes. And yes - I do feel guilty for having coded a couple (default) method implementations without having provided tests. At least the classes are abstract and it can't be said that an object can be created (to test) just yet. Stubs and tests seem to be next in line...