Fix composition.

The composition works thanks to the formal composition herited from
Map. See ticket 12880, comments 17 and 21; another method may
implement the actual computation to have the polynomials defining
the composed isogeny.
Merge branch 'ticket/12880' into ticket/16245

Conflicts:
	src/sage/schemes/elliptic_curves/ell_curve_isogeny.py
Corrects stilistic staff in doctests.
Stylistic modification for doctests.
Initial implementation of Koszul complex and functors on chain complexes.
Added doctests to Koszul complexes.
Merge branch 'develop' into u/tscrim/koszul_complexes
Merge branch 'develop' into u/tscrim/koszul_complexes
Finalizing for review.

- Fixed tensor products of chain complexes.
- Made it so this works with the functorial constructions.
- Added Koszul complex to the doc.
Merge branch 'develop' into ticket/16245-compose_isogenies

Conflicts:
	src/sage/schemes/elliptic_curves/ell_curve_isogeny.py
Trac 16245: whitespace fixes
Improve sig_check() documentation
Further documentation fixes
Clarify that Python can also interrupt
Merge branch 'u/tscrim/koszul_complexes' of trac.sagemath.org:sage into u/tscrim/koszul_complexes

* 'u/tscrim/koszul_complexes' of trac.sagemath.org:sage:
  Finalizing for review.
  Added doctests to Koszul complexes.
  Initial implementation of Koszul complex and functors on chain complexes.
Fixes from John's comments.
Allow modulus="primitive" in finite field constructor
Deprecate non-polynomial modulus argument in constructor of implementations of finite fields
Improve computation of j-invariant over smaller field
Fix silly doctest
Added support for general grading groups.