Reorganize sparse matrix code into a module.
export only a well-defined interface, while hiding internal functions.
Create a sparse/ directory for all the sparse matrix code.
Rename the cscdiagit type to SpDiagIter
Fix boolean setindex!
Add convert(SparseMatrixCSC{Tv,Ti}, M::Matrix)