• query: Stop searching the entire flow tree to resolve script-to-layout

    queries.
    
    Instead of searching the entire tree to find the applicable fragment, we
    use the flow construction result of the nearest DOM node to find the
    flow we're looking for directly. We then recursively do this with
    ancestor DOM nodes in order to find the entire flow tree path,
    performing breadth first search to deal with anonymous flows in between.
    
    To fully eliminate the search, we will probably want some combination of
    (a) parent pointers in the flow tree and (b) rewritten script-to-layout
    queries that don't depend on visiting all ancestor flows of the query
    node. But this is a quick and dirty solution that dramatically improves
    the performance of layout queries.
    
    This is a large responsiveness increase on nytimes.com.
    pcwalton committed Dec 2, 2016