Experimental event bubbling/delegation without DOM