[la.container.matrix-interface] add valid()
[la.container.istl] add valid() to IstlRowMajorSparseMatrix
[la.container.common] add valid() to CommonDenseMatrix
[la.container.eigen.dense] add valid() to EigenDenseMatrix
[la.container.eigen.sparse] add valid() to EingeRowMajorSparseMatrix
[la.container.eigen.sparse] fix severe error in EigenRowMajorSparseMatrix

There was an error in the ctor of the EigenRowMajorSparseMatrix, where
creation of a matrix with more rows than columns would lead to an eigen
matrix with entries in the sparsity pattern that were outside the bounds.
This was due to the unconditional creation of diagonal entries in the
sparsity pattern for empty rows (since eigen can not handle empty rows if
used as we do it). This lead to hard-to-spot wrong memory access in eigens
internal routines (thanks to Andreas Buhr for spotting this one!).