Add a with_imm_element_like() method.

… gives a generic element from a generic node.
Move AbastractNode::is_element to the TreeNodeRef trait.
CSS: Use libutil’s traits in Selector matching to not depend on libscript.