gh-35270: construct AdditiveAbelianGroupWrapper from (not necessarily independent) generating set
Currently, constructing an `AdditiveAbelianGroupWrapper` requires prior
knowledge of an *independent* set of generators for the group. This
patch adds an algorithm (implemented following Sutherland's thesis) to
construct an `AdditiveAbelianGroupWrapper` from an arbitrary generating
set, whose members need not be independent. This is useful for all kinds
of things, including structure computations for finite abelian groups.
URL: https://github.com/sagemath/sage/pull/35270
Reported by: Lorenz Panny
Reviewer(s): Lorenz Panny, Travis Scrimshaw