New stopping test in LSQR.

Based on lower bound on direct error in energy norm.
Make generic class new style.
Use new raise syntax.
Make MINRES a subclass of generic Krylov method class.
First (bare bones) version of G-CRAIG.
Updates to CRAIG.
Import CRAIG.
Improvements to residuals calculations.
Add direct error window.
Reinstated negative of a linop.
Merge branch 'master' into stop-test

Conflicts:
	pykrylov/linop/linop.py
	pykrylov/minres/minres.py
Improve docstrings.
Fix demo code.
Add direct error estimate to LSMR.
First version of CRAIG-MR.
Minor changes to CRAIGMR.
Store iterates and manage error estimates.
New version of CRAIG.