You are right concerning the second point.

If the type/class CONVERGENCE_T is responsible for the output of information this should be reflected in the name. I do not prefer the output of convergence/divergence information among different classes.  I prefer to keep it simple and small. Why not give a criterion for convergence directly to the picard solver algorithm, i.e. a vector norm and a tolerance?