[omnibox] Improve Pedal triggering with natural concept detection

The first method of triggering Pedals used small sets of known
match suggestions, and did not cover most of the possible ways
that users might indicate their intention.  This CL dramatically
expands the space of acceptable queries by checking match text
against small sets of concepts.  When all required concepts
are present, with or without non-required concepts, with no
extraneous text uncovered by the concept set, the Pedal triggers.
This approach efficiently represents large sets of trigger
suggestions without wasting a lot of space on string structures.

Bug: 893183
Change-Id: I75a8ce1510a732c3ea38088ec21b7b3e828c1617
Reviewed-on: https://chromium-review.googlesource.com/c/1402026
Commit-Queue: Orin Jaworski <orinj@chromium.org>
Reviewed-by: Tommy Li <tommycli@chromium.org>
Cr-Commit-Position: refs/heads/master@{#623530}
8 files changed