Added sat_solver class