gh-37125: compute isogeny kernel polynomials from irreducible divisors or (possibly irrational) points
In this patch we implement Algorithms 3 and 4 from [this
paper](https://ia.cr/2023/106). Evidently, the necessity for such an
algorithm arises when converting from endomorphism-ring ideals to
isogenies.
One immediate application is that `isogenies_prime_degree_general()` can
be simplified, even with a small speedup:
```sage
sage: K.<i> = QuadraticField(-1)
sage: E = EllipticCurve(K,[0,0,0,1,0])
sage: %timeit E.isogenies_prime_degree(37)
````
Before: `2.39 s ± 3.31 ms per loop (mean ± std. dev. of 7 runs, 1 loop
each)`
After: `2.29 s ± 5.05 ms per loop (mean ± std. dev. of 7 runs, 1 loop
each)`
#sd123
URL: https://github.com/sagemath/sage/pull/37125
Reported by: Lorenz Panny
Reviewer(s): John Cremona