Issue 3656: Implementation of fancy indexing in matrix
give Sparse an extract method; let Sparse use fancy indices
remove testing for slice in a2idx
edit submatrix doc and copy docs into sparse.py
manualintegrate can now handle Heaviside(x)

- Integral(Heaviside(x),x) == Max(0,x)
- enable simple substitutions
- add manualintegrate tests for Heaviside
- add to docs for improving manualintegrate

Also, rename "Log" integration commands to Reciprical for
	readability in manualintegrate module