* extract file service
* hashCode, equals, toStrings methods for PlumDirectory
* add PlumFile class