fix reading complete diagonal of bigmatrix
STY: tidying of diagonal
Tidy sparse_score_mat and use diagonal()

* diagonal required for big/ff matrices
new function to find diagonals from on disk matrix

* Ashley pointed out that would be nmuch faster to read in chunks
* ... and indeed it is
Teach diagonal to use fast_disk_diag for on disk matrices

* unless they have a diagonal attribute
fix and test names in diagonal(sparse matrix)
Add function to fill in blocks of sparse matrix
Add example for sparse matrix creation
Add utility function to convert a vector of scores into named row or column matrix