Major changes

Changed IProblem to an abstract class AProblem
Began work on problem generation