hammer2 - Major restructuring, part 3/several
* Use hammer2_chain_duplicate() to move hardlinks to common parents.
* Adjust flush algorithms, particularly when it comes to figuring out
when we can clear the MOVED bit on a chain.
* chain RBTREE sorts on delete_tid in addition to sorting on the key.
Add ranged searches.
The frontend no longer modifies indirect blocks. Instead, chains in
the RBTREE are used to placehold both insertions and deletions.
* Stabilization pass. (still work to do on chain refs / unmount and
optimizing the flush).