1. Add CartesianProductEJA. 2. Check the axioms in the constructor when check != False? 3. Add references and start citing them. 4. Implement the octonion simple EJA. 5. Factor out the unit-norm basis (and operator symmetry) tests once all of the algebras pass. 6. Override inner_product(), _max_test_case_size(), et cetera in DirectSumEJA. 7. Switch to QQ in *all* algebras for _charpoly_coefficients().