Add degree_offset option to heurisch(), for testing diff degree bounds

See issue 2606

Conflicts:
	sympy/integrals/heurisch.py
Changes to support gmpy 1.13 or later, or gmpy2 2.0.0b4 or later.
Improvements to gmpy and gmpy2 fixes.
Fix a logically incorrect example in the expand() docstring

The docstring was supposed to describe how to disable the log hint, which is
applied before the mul hint, but it instead showed how to disable the mul
hint, which does nothing in this case.
Expanding doc for partial fraction decomposition
set full=True in the example
add examples show the difference between with and without setting full=True
delete a useless example
Remove two extraneous lines from logic to detect gmpy/gmpy2 version.
Merge pull request #1772 from asmeurer/expand_doc_fix

Fix a logically incorrect example in the expand() docstring
indexing allows exprs
add matrix block
import matrix block
Block.on_diag
Block assumptions
Block docstring
Block handles single dim inputs
slicing in matrix expressions
test_args for Block
blockcut