fixing the multiple roots problem with updating left, right

shiftLeftRightAttribute takes into consideration the root. However the root is not set until after the the other nodes are updated. So this part of shiftLeftRightAttribute

if ($this->treeAttribute !== false) {
                $condition = [
                    'and',
                    $condition,
                    [$this->treeAttribute => $this->owner->getAttribute($this->treeAttribute)]
                ];
            }

Will create a condition with where $this->owner->getAttribute($this->treeAttribute) is empty.