Update bundled copy of decorator module to 3.4.0
Patch bundled copy of decorator module to work without 2to3

All of the function & method attributes this changes appear to be present in Python 2.7,
so we can safely use them, even if decorator can't because it wants to support older
versions of Python.
Apply python-modernize to IPython.external.mathjax
Fix %timeit syntax for Python 2
Fix exec for Python 2 in %timeit
Bundled copy of decorator doesn't actually need six