Modify layout node iterator to traverse pseudo element as well as DOM without connecting pseudo element to DOM
Change functions name to be not ambiguous
Add some function for pseudo_node and reduce duplication in construct.rs