Add API for linear operators as functions

This also improves the type specification of KrylovSubspace,
for efficient dispatch
Improve ConvergenceHistory API
Add LSQR
Refactor API to pass initial guess to in-place solvers
Safer tests
Make safe for Integer array types
Fix comparison of tol in simple.jl
Merge pull request #18 from timholy/api

Add LSQR and rework API