maple_tree: Fix coalesce/rebalance when erasing from the front of the
tree.
mas_coalesce_pivots added to set all null entries to the same pivot.
mas_coalesce_empty added to coalesce pivots after setting the entry to
NULL.
mas_rebalance reworked to free empty & coalesce_pivots on allocation
failure. Parent nodes are then checked.
coalesce_root has a special case for when end == coalesce for handling
allocation failures.
mas_coalesce reworked to better perform when checking parent nodes &
works when allocations fail.
Gaps are now pushed to the right to avoid pulling the 0 pivot to the
left.
Also included:
Add check for dense nodes.
Fix mas_prev_slot called with root node.
typo fix for rebalance comment
Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>