Adds Derivative.as_finite_diff() and core.finite_diff with finite_diff_weights and apply_finite_difference
Change default step of as_finite_diff from sympify('h') to 1
Fixes Py3 error for test range+range
Moved finite_diff from core to series. Extended doc of finite_diff.
Updated Derivative.as_finite_diff() doc, tests and default step-size.
Merge remote-tracking branch 'upstream/master' into finite_difference
Fixed/updated docstrings with new master
Fixed docstring.
Test some basic properties of iterable()
Updated finite_diff according to feedback.

* finite_diff is moved from sympy.series to sympy.calculus
* Derivative.as_finite_diff got a new kwarg: ``wrt`` for use on partial
    derivatives, the arguments indep_vals and around were also renamed
    to points and x0 respectively.
* Derivative.as_finite_diff was refactored and made PEP8 compliant
* finite_diff.py and test_finite_diff.py were made PEP8 compliant
* Typos were fixed througout the docstrings
* A small part on finite differences were added to the tutorial on calculus.
Fixes to finite_diff in response to PR feedback.
Better tutorial text. [skip ci]
Updated aboutus.rst with finite diff work. [skip ci]
Moved as_finite_diff to calculus.finite_diff (no hook in core).
Fix docstrings. PEP8 compliance.

Making doctests for long output pass is tricky, see e.g.:
http://stackoverflow.com/questions/13395610/
Minor fix of calculus tutorial.
fix polygon side intersection detection
Fix whitespace in doc.
Merge pull request #7439 from smichr/geom

fix polygon side intersection detection
manualintegrate can now handle Heaviside(x)

- Integral(Heaviside(x),x) == x*Heaviside(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