class Async::Node

def parent=(parent)

@returns [Node] Itself.
@parameter parent [Node | Nil] The parent to attach to, or nil to detach.

Change the parent of this node.
def parent=(parent)
	return if @parent.equal?(parent)
	
	if @parent
		@parent.remove_child(self)
		@parent = nil
	end
	
	if parent
		parent.add_child(self)
	end
	
	return self
end