Introduce SolverCore