Finitely generated group for which all homomorphisms to any finite group can be listed in finite time

Definition
A finitely generated group for which all homomorphisms to any finite group can be listed in finite time is a finitely generated group $$G$$ such that the following holds for one (and hence every) finite generating set $$S$$ of $$G$$:


 * 1) For any finite group $$K$$ explicitly specified by means of its multiplication table, and every set map from $$S$$ to $$K$$, it is possible to determine in finite time whether the est map extends to a group homomorphism from $$G$$ to $$K$$. Note that if it does extend, it extends uniquely.
 * 2) For any finite group $$K$$ explicitly specified by means of its multiplication table, it is possible to, in finite time, list all the set maps from $$S$$ to $$K$$ that extend to group homomorphisms from $$G$$ to $$K$$.
 * 3) For any finite group $$K$$ explicitly specified by means of its multiplication table, and every set map from $$S$$ to $$K$$, it is possible to determine in finite time whether the est map extends to a surjective group homomorphism from $$G$$ to $$K$$. Note that if it does extend, it extends uniquely.
 * 4) For any finite group $$K$$ explicitly specified by means of its multiplication table, it is possible to, in finite time, list all the set maps from $$S$$ to $$K$$ that extend to surjective group homomorphisms from $$G$$ to $$K$$.