Create before_parent_node and before_node

Conflicts:

	src/components/main/layout/construct.rs
	src/components/main/layout/wrapper.rs
	src/components/script/dom/node.rs
	src/components/util/slot.rs
Add some function for pseudo_node and reduce duplication in construct.rs
Rebase PR