Hi!
Warning: heavily opinionated post
I think that it's better to use C for libraries and use whatever you want for programs (be it C++, D, or your favorite scripting language).
I also think that splitting contentLister into a backend library and a user-replaceable front-end program is the best route, but that is for the future. IMHO it's better to first fix the current one.
And about C++: the only drawback for applications is the added dependency of libstdc++, which is bound to the gcc version used (unlike the libc, you have to use that libstdc++ with your program, a newer version doesn't work). For a project such as the iliad OS, this is not that relevant, as we know what libstdc++ will be installed in all the iliads.
OTOH, I generally prefer coding in C over C++... there are less surprises although you end writing a little more code