Implement decomposition based solve functions for solving Ax = b

So are we using `RCP` only with immutable objects?