Lanczos determination of ground (and excited) states updated with better handling of
special cases. if #required eigenvalues/vectors exceeds the dimension of the sector
or so does the block number then the hamiltonian is usually small (<10) and is solved
by direct diagonalization.
(P)ARPACK does not handle this case and produces an error so no eigenvalues/vectors
are given on output. This is because of the condition:
nev <= ncv < n
which is not respected.
This solution allows immediate extension to finite-temperature case as soon as I
find an ideal criteria to select the low-lying states.