#butterdeck func) change node order
#butterdeck func) reorder when move up depth
#butterdeck func) update state on node status or focus change
#butterdeck func) update parent key on split and merge
#butterdeck func) prevent delete parent node when children exist
#butterdeck func) adjust move prev focus node
#butterdeck func) sort data by depth
#butterdeck func) update parent node
#butterdeck func) handle key command for tab and shift+tab
#butterdeck func) node order calculation
#butterdeck func) handle key commands for up/down arrows
#butterdeck func) handle key command for return and back