Keeps package_dir when loading task or db from file
Implementation for task and ModulesDB as these are currently the interfaces we usually use when loading from file.
The implementation slightly differs between them two, as a _name property for the ModulesDB is needed soon anyways, so I decided to go with a kwarg there. However I think, usually this does not need to be user-specified, so a working implementation in the from_file methods is all we really need.