Implement decomposition based solve functions for solving Ax = b
Overload << for DenseMatrix class
overload << for MatrixBase class

Now any drived class of `MatrixBase`can have their own printing fucntion
Merge branch 'master' into solve_ax_b

Conflicts:
	src/tests/printing/test_printing.cpp
Refactor

* Restructure the implementation of operator ==
* Move implementation of __string__() to matrix.cpp
Merge pull request #235 from thilinarmtb/solve_ax_b

Implement decomposition based solve functions for solving Ax = b
Merge pull request #249 from certik/args

Implement get_args()
Fix an important bug (don't steal the dict_)

We can't steal the dict_, because sometimes there is more than one reference to
Mul, so all the other Mul's then become corrupt.

Test was added. We can enable the Python test, as it works now.