[solo.commands.search] do not hold the inst_repo lock while using stdio functions

print_package_info is already able to deal with stale data and we
better not deadlock other threads or processes there.
[solo.commands.match] add concurrency support