I agree with @b4n some of the problems might be gone with a custom implemention of the FiF feature
I'm trying to psych myself up to do it. I think it will be relatively trivial to implement the actual search, but I'm very worried how hard it will be actually integrate into the existing `search.c` code. I'd wager the integration will take 10x longer and result in more lines changed than all of the lines added in the actual new routines to perform the recursive search using Glib/GIO.