Fixed a bug in solver::cg
Started work on using null-space information for aggregated AMG

Implemented tentative prolongation with null-space for non-smoothed
aggregation.
Moved tentative prolongation to its own header
Tentative prolongation with null-space for smoothed aggregation
out of bounds bug fixed
Assume eigen is availabe

Will get rid of Eigen dependency later
Take null-space vectors in matrix market solver
Documenting tentative prolongation code
Moved nullspace params to tentative_prolongation.hpp

Also updated docs, fixed a bug in smoothed_aggregation