Added Solver interface and implementation based on LU decomp.