[Release][GMRES] don't copy the Krylov basis in the update method

The full krylov basis is copied in the call of the method update(),
working with a reference to the krylov basis reduced the peak amount of allocated memory
by a factor of about 1.7 and improves the runtime by 4%.

Steffen: Also constified all applicable function arguments as suggested
         by Christian.

Closes FS#1378
(cherry picked from commit f783a5e7356c4d4aadcc438aba17e84b6ecea7eb)

Signed-off-by: Markus Blatt <markus@dr-blatt.de>
[release] Update list of copyright holders until Dune 2.3.
(cherry picked from commit 038ed7bccc18bb37bfed0d788d9939ef339a566c)

Signed-off-by: Markus Blatt <markus@dr-blatt.de>
[Bugfix][BCRSMatrix] Never change the stored value of the allocated array size

That value indicates the amount of allocated memory, changing it tripped
a problem when copy-assigning matrices for me.
(cherry picked from commit a074d811d3e5556f3c6353b57aefdae8aaf5e15e)

Signed-off-by: Markus Blatt <markus@dr-blatt.de>
[Release][BCRSMatrix] Delay allocation of contiguous data array until after the pattern has been created

Due to the way BCRSMatrix construction works, you cannot write data to
the matrix before the pattern is finalized, except in the new implicit
build mode. This fact makes it possible to reduce the memory
requirements when building the pattern using an intermediate data
structure: That temporary data structure will usually be of about the
same size as the number of nonzero matrix entries. Thus by delaying the
allocation of the actual data array in the BCRSMatrix until after the user has
built up the pattern information inside the matrix and has had a chance
to deallocate the temporary data, we never need substantially more
memory than required for the matrix in any case, which avoids the
current memory spike during pattern construction.
(cherry picked from commit f5ed9b9a270de9b8a2317b3b43053b2c0d4306af)

Signed-off-by: Markus Blatt <markus@dr-blatt.de>
[Release][BCRSMatrix] Add a more efficient interface for setting all column indices of a row
(cherry picked from commit 04a42801515f1b51433e61d687877164dcf0c0b6)

Signed-off-by: Markus Blatt <markus@dr-blatt.de>
[Release][BCRSMatrix] Improve readability of new method setIndices()

- Use std::copy instead of homegrown copy loop
- Avoid custom counting logic for consistency check
(cherry picked from commit 8dadad0073f6d9a80c5621adf75c7cbde7f3ae48)

Signed-off-by: Markus Blatt <markus@dr-blatt.de>