added ProblemSet and Problem classes