hammer2 - Implement meta-data statistics rollup
* HAMMER2 keeps total recursive data and inode count statistics in each
inode. This means that one can determine how much storage is being
used for an entire subdirectory tree simply by doing a 'hammer2 stat <dir>'.
* Implement this by storing temporary rollup adjustments in the hammer2_chain
structure, then synchronizing those adjustments on insertions, deletions,
and flushes.
Generally speaking, the chain structure has a data_count, inode_count,
data_count_up, and inode_count_up for temporary tracking. The main count
fields are applied to the current chain AND the parent, while the *_up
fields are only applied to the parent.
For example, when an inode is inserted its stored statistics must be
applied to the parent (recursively), but not to itself.
* Preliminary implementation.