FileManagement package

Lots of work this past week on the FileManagement package.  Not yet finished, but getting close.  Note that JavaDoc comments are in need of tweaking and should not be trusted.
try really hard avoid method methods that might return null. They cause at least two problems:

1) make the client code more cumbersome with if null checks everywhere - yuck. clients have to do more work and the code because longer and less simple etc. 
2) clients can easily forget to do this work resulting in an NPE. Typically if a client causes a method it should be expect that methods succeeds or throws an exception.