Creating Problem Solvers