Remove unused module inspect.
Raise ShapeError if shape mismatch.
Determine automatically if block diagonal operator is symmetric.
Introduce operator type.

Operators have a type based on Numpy's dtypes.
The Numpy promotion rules apply when combining or applying operators.
Use np.sqrt instead of math.sqrt in CG for complex problems.
Merge remote-tracking branch 'upstream/feature/dtype' into feature/dtype
fix typos
Merge pull request #10 from ghisvail/feature/dtype

Corrections for feature/dtype
Use operator notation.
Use operator instead of matvec in constructor.
Remove dangling comment.
Use proper operators in CG.
Take complex input into account in CG.
Update benchmark to supply argument.
Introduce dtype into Bi-CGSTAB.
Introduce dtype into CGS.
Introduce dtype into MINRES.
Introduce dtype into SYMMLQ.
Introduce dtype into TFQMR.
Merge branch 'feature/dtype' into develop