Deletion from a leaf node
1. search for the key to delete
2. if the key in leaf nodes, simply delete it
3. if underflow happens, rebalancing
Rebalancing starts from a leaf toward the root until the tree is balanced.
Triggered when underflow happens through remove()