Walk node parent chains manually

We know them; document and window need a lot of special-casing; and this
avoid walking over chrome documents/windows.
collapsible headers
show "no listeners" text when missing own listeners