refactor(mail,library): move their upload directories onto the disk
MailFileService kept its own UPLOAD_PATH constant and chmod'ed every attachment to 0666 — writable by anything running on the server; the mode now comes from the configuration of the disk. LibraryCoverStorage replaces four places that spelled out the three cover directories, and the size is an enum rather than a directory name repeated in each of them.
UserClean, which deletes what a removed user leaves behind, drops its hand-written recursive directory removal for deleteDirectory() — which the port gains here, along with what the library export needed.
UserClean, which deletes what a removed user leaves behind, drops its hand-written recursive directory removal for deleteDirectory() — which the port gains here, along with what the library export needed.