Add support for repeated operations
Structure traits with a binary operation should have support for repeated application of the operation with a chosen value (e.g. multiplication of a value n
times in a multiplicative monoid).
For values of n
greater than zero this is feasible in a magma, for n
== 0 it will require a monoid and for n
less than zero a group (with inverses) is needed?