renamed Solver to GSSolver, made a new class Solver as base class instead