if we delegate to accounts, we delegate everything right?  If so, then shouldn't this first `KeywordSearch` block just contain the two `with` blocks that trigger delegate_to_accounts?

    delegate_to_accounts = false
    
    KeywordSearch.search(query) do |with|
      # run email and any with blocks and if match, delegate_to_accounts = true
    end

    if delegate_to_accounts
      # delegate to accounts
    else
      # full original KeywordSearch block
    end

I think that is clear.

Interestingly I just found a different alternative.

Just calling `KeywordSearch.search('email:bob@bob.com howdy')` returns `{"email"=>[["bob@bob.com", true]], :default=>[["howdy", true]]}`.  

So I think we can say:

    delegate_to_accounts = KeywordSearch.search('email:bob@bob.com howdy').values_at('email',:default).compact.any?

or similar