[la.interfaces] prohibit negative ind arguments for VectorArray methods

This helps to reduce the complexity of implementations. (Think of
NumpyVectorArrays v with len(v) < len(v._array).
[la] call check_ind on the right VectorArray instance

This is necessary as we now also perform range checks
in check_ind
[la.listvectorarray] simplify implementation assuming that indices are non-negative
[la.listvectorarray] bugfix
[la.numpyvectorarray] simplify implementation by assuming that indices are non-negative
[la.numpyvectorarray] fix v.replace(v)
[tests] update valid and invalid inds as negative indices are now prohibited
[tests] more VectorArray tests
[la.interfaces] bugfix
[discretizations.basic] simplify log output