Backport PR #4016: fix IPython.start_* functions.

See gh-4005
Backport PR #4018: Fix warning when running IPython.kernel tests

The signature of TemporaryDirectory.cleanup() changed just before Python 3.2, and our TemporaryWorkingDirectory subclass was receiving an unexpected parameter. This copies in a newer TemporaryDirectory.cleanup() implementation for Python 2.7, and tweaks the subclass to accept the extra parameter.
Backport PR #4019: Test skipping without unicode paths

I somehow broke unicode in the terminal on this Debian box, and it revealed a load of tests that errored because they were trying to use non-ascii paths and commands. We already have a decorator for this, so I've scattered it around, and broken up a couple of tests into smaller chunks.
Backport PR #4021: Fix parallel.client.View map() on numpy arrays

Resolves https://github.com/ipython/ipython/issues/4020.
Backport PR #4022: DOC: fix links to matplotlib, notebook docs

I've added a link to pandas, made all matplotlib links point to
matplotlib.org, and fixed a link in the notebook help menu to point to our new
notebook.html, now that htmlnotebook.html is a redirect.

Whoever ends up merging this PR should backport it to 1.x.
Backport PR #4026: small doc fix in nbconvert

`__call__` -> `call` plus wrap methods name between back ticks.
Backport PR #4029: bson.Binary moved

for mongodb task backend
Backport PR #4031: don't close_fds on Windows

straggler missed in 14b007d

closes #3244 (again)
Backport PR #4035: Fixed custom jinja2 templates being ignored when setting template_path

IPython/html/notebookapp.py was ignoring user specified templates by setting the jinja2 environment to the default template directory before updating template_path.  This fix allows a user defined template_path to propagate to the jinja2 environment.
Backport PR #4047: Use istype() when checking if canned object is a dict

Using istype(canned, dict) instead of isinstance(canned, dict) ensures that dict subclasses retain their type during unserialization. This also agrees with the implementation of serialize_object().
Backport PR #3974: nbconvert: Fix app tests on Window7 w/ Python 3.3

closes #3945

Please see issue for more information.
Backport PR #4014: Fix typo in ipapp
Backport PR #3987: get files list in backport_pr

fixes omission of new files in backport commits
Backport PR #4091: Make Qt console banner configurable

The banner is configurable in the terminal, so I assume it's just an oversight that it's not configurable in the Qt console.

From [this StackOverflow question](http://stackoverflow.com/questions/18363050/modify-banner-of-qt-console-of-ipython).
Backport PR #4056: respect `pylab_import_all` when `--pylab` specified at the command-line

Earlier cleanup cleaned up a bit too much, ignoring this configurable.

should be backported to 1.x