#14102: Nonsymmetric Macdonald polynomials
Disable terminal echo in the Singular interface
override the _eval_line method as well
make terminal echo optional in Expect class
Merge branch 'public/ticket/10963-doc-distributive' into u/aschilling/combinat/nonsymmetric_macdonald-14102

Conflicts:
	src/doc/en/reference/combinat/root_systems.rst
	src/sage/combinat/root_system/all.py
updated docs in hecke_algebra_representation
Merge branch 'categories/axioms-10963' into ticket/14102

Manually resolved conflicts around positive_roots_nonparabolic and friends in:
	src/sage/combinat/root_system/root_lattice_realizations.py
Merge branch 'ticket/10963' into ticket/14102

(latest changes include documentation compilation fixes)
Merge branch 'ticket/15931-hash-free_module' into ticket/14102

Merging in #15931 should fix the bug reported on
http://trac.sagemath.org/ticket/14102#comment:46
Trac 14102: fixed broken non raw docstring + typo
#16059: add a __hash__ method for Braid groups + docs about Cayley graph.
trac 16224: make sure maxima_lib knows about bessel functions.
 Furthermore, max_to_sr and sr_to_max will now raise an error if they would
 overwrite an entry in a translation dictionary. This probably will make such
 corruptions due to mistranslations a little easier to diagnose.
 Finally, if you reraise an error in an except, it's better to do so by a bare
 "raise": that way the backtrace remains intact, which makes for better
 debugging.
trac 16224: make max_to_sr look in sage.symbolic.pynac.symbol_table['maxima']
for translations of operators. Since this is the central place where pynac
symbols register their conversion, this should lead to much more reliable
results.
Merge with latest #10963.

Conflicts:
	src/sage/combinat/root_system/pieri_factors.py
	src/sage/combinat/root_system/root_lattice_realizations.py
	src/sage/combinat/root_system/weight_lattice_realizations.py
Added back in import statement as per comment.
fixed new syntax for crystals in nonsymmetric_macdonald
generated changes from "== None" to "is None"

- and similarly from "!= None" to "is not None"
- 177 modules affected (py, pyx and 1 rst)
manual fixup of the generated changes

* changed "not xxx is None" to "xxx is not None" (where appropriate)
* reverted changes in docstring text
  - usually did not revert changes to doctest *code*
  - but reverted changes to expected results (if required)
* (usually) did not revert changes to *code* in comments

Always tried to apply good judgement - but refrained from changes
unrelated to the subject "is None".
Marked long tests and some doc formatting.
14102: Proofread latest commits by Travis