Use MSR matrix and BiCGSTAB iterative method

To support non-three-diagonal matrices.
Simplify drawing code a bit