hm, not sure if that makes much sense. its really nesting the thing
deeper and deeper. instead of a prefix provider, what about having a
"strategy" pattern for the getCandidates method? we also would need a
handler once they are loaded from the repo maybe... would that make sense?