code: OMVRBTreeEntry<K, V> deleteEntry(OMVRBTreeEntry<K, V> p) {
      setSizeDelta(-1);
      modCount++;
      if (pageIndex > -1) {
        // DELETE INSIDE THE NODE
        p.remove();
  
        if (p.getSize() > 0)
          return p;
      }
  
      final OMVRBTreeEntry<K, V> next = successor(p);
      // DELETE THE ENTIRE NODE, RE-BUILDING THE STRUCTURE
      removeNode(p);
  
      // RETURN NEXT NODE
      return next;
    }
docs: Delete node p, and then re-balance the tree.
  
  @param p
  node to delete
  @return