Moved different solvers into different files