Moves this node and places it as a child node of the `destination`
            :class:`CTENode` (or makes it a root node if `destination` is
            ``None``).

            Optionally, `position` can be a callable which is invoked prior to
            placement of the node with this node and the destination node as the
            sole two arguments; this can be useful in implementing specific
            sibling ordering semantics.

            Optionally, if `save` is ``True``, after the move operation
            completes (after the :attr:`parent` foreign key is updated and the
            `position` callable is called if present), a call to
            :meth:`Model.save` is made.

            :param destination: the destination node of this move, ``None``
                denoting that the node will become a root node.

            :param position: optional callable invoked prior to placement for
                purposes of custom sibling ordering semantics.

            :param save: optional flag indicating whether this model's
                :meth:`save` method should be invoked after the move.

            :return: this node.

def move(self, destination=None, position=None, save=False):
        """ Moves this node and places it as a child node of the `destination`
            :class:`CTENode` (or makes it a root node if `destination` is
            ``None``).

            Optionally, `position` can be a callable which is invoked prior to
            placement of the node with this node and the destination node as the
            sole two arguments; this can be useful in implementing specific
            sibling ordering semantics.

            Optionally, if `save` is ``True``, after the move operation
            completes (after the :attr:`parent` foreign key is updated and the
            `position` callable is called if present), a call to
            :meth:`Model.save` is made.

            :param destination: the destination node of this move, ``None``
                denoting that the node will become a root node.

            :param position: optional callable invoked prior to placement for
                purposes of custom sibling ordering semantics.

            :param save: optional flag indicating whether this model's
                :meth:`save` method should be invoked after the move.

            :return: this node.
        """
        return self.__class__.objects.move(self, destination, position, save)