Trac #14753: Revert ATLAS package
5.10
Trac #14416: Fix conversion QQ -> RDF
Trac #14595: clean-up of the file heegner.py
Trac #12876: Fix element and parent classes of Hom categories to be abstract, and simplify the Hom logic

This patch fixes the parent and element classes for Hom categories to
be purely abstract, and simplifies the Hom logic:

- Unified the logic for selecting the class when building a Homset
  (e.g. Homset, RingHomset, HeckeModuleHomspace, ...). This is now
  systematically done through the _Hom_ hook. The logic still has a
  fundamental flaw, but that's for the later #10668.
- The cache for Hom is handled at a single point in Hom
  In particular, homsets created via the _Hom_ hook are now unique.
- If category is None, Hom simply calls itself with the meet of the
  categories of the parent, which removes a cache handling duplication
  in the code.
- Parent.Hom calls  Hom directly (removes duplicate _Hom_ logic).
- ParentWithBase.Hom was redundant and is gone.
- Reduce the footprint of the current trick to delegate
  Hom(F,F)(on_basis=...) to module_morphism, allow for the diagonal
  option too, an make sure the homset category is set properly.
- Update a doctest in sage.modules.vector_space_homspace to take into
  account that homsets created via _Hom_ are now unique.
- Scheme is (apparently) an abstract base class; so it should not be
  instantiated. I changed some doctests in
  sage.schemes.generic.SchemeMorphism to use instead the concrete
  Spec(ZZ). Those doctests were breaking because Scheme does not
  implement equality, which is required for Hom caching.

As a byproduct, the HeckeModules category does not import any more
HeckeModulesHomspace, which was a recurrent source of import loops.

It was also needed to not use a weak cache in infinite_polynomial_ring
for data that are cached anyway.
* * *
#12876: Review patch, adding a test demonstrating a cache shortcut
Trac #14615: cythonize lazy_attribute
Trac #11835: implement a new class for ternary quadratic forms with integer coefficients
Trac #11835: minor changes to the class TernaryQF
Trac #11835: changes to the class TernaryQF
Trac #13080: Revised implementation of Galois representations for elliptic curves over arbitrary number fields. (This patch just implements surjectivity.)
Trac #14640: Refactor the plot_exposed() function into a method of plot objects
Trac #14640: review patch.
Trac #8392: Added general RSK and inverse functions to global namespace.
Trac #14266: ascii art module

 - all tests pass
 - depend of trac_8703 -> trees
Trac #14266: Review patch.
Trac #14266: Monkey-patch the SymPy terminal width detection in doctest mode
Trac #6100: Generators for homology calculations.
Trac #14626: Work around bug in multiprocessing with CalledProcessError exception
Trac #14629: Sort iterator through Cremona database by conductor
Trac #12728: Sanitize include paths -- auto patch