Rework the index creation process.
Pass 1 now iterates over the default hierarchy (either doc or the entire libdir) and the help path (if enabled) to determine names and locations of all help patches in the scope of the help browser (as set in the GUI preferences). This initial pass is needed, in particular, to resolve related object references in the meta data in pass 2. Pass 2 then iterates over all index entries constructed in pass 1, adding all the available meta data, including cross references to related objects. When pass 2 finishes, index construction is complete and the index cache is written to disk. Note the new revision of the help browser narrows indexing to just the -help.pd patches. Previous versions would index all .pd files. This may be subject to review, but the new indexing scheme is faster and produces less noise in the earch results (i.e., you won't see any helper abstractions or other patches which just happen to be bundled with the help patches).
Showing with 31 additions and 73 deletions