hammer2 - Refactor file unlink w/open descriptor
* Remove the H2 special cases for the HAMMER2_CHAIN_DELETED flag. These
special cases existed to deal with the unlink-open-file case, but hackish
and didn't deal with all the issues (such as bulk-free scan code losing
track of the unlinked open file).
* Change the unlink case when the file is still open or mmap'd. Instead of
deleting the inode H2 will now move the inode to a hidden directory in
the mount root. This way the bulk freeing code still sees it.
When the inode is moved it is re-keyed to its inode number, thus guaranteed
not to conflict with anything else sitting in the hidden directory.
* Add code to create the hidden directory in the mount root if it does not
exist.
* Add code to wipe the contents of the hidden directory on-mount (as a crash
recovery mechanic).