previously we'd simply query for an Exec that contains the primary query
word. that is actually fairly unreliable because that will also match
on env vars, arguments and the like which then has opportunity to produce
notably examples is the konversation flatpak which matches 'ding' because
it has a --forwarding argument in the Exec line and then even gets a
relevance bump because it is a KDE application, so suddenly it outscores
the actual ding application.
to deal with this some rejiggering is necessary. we now query for potential
Exec matches in its own query so we can tell which services are general
matches and which are Exec matches. we'll then reduce the exec matches
down to the ones that aren't already service matches AND where the actual
executable name contains the primary query.