Add a mode to exec code in %debug magic
Document the new usage of %debug
Set calling program to the empty string, when argv not in sys

It might happen, then the sys module has no argv, when embeding IPython
into other programs with IPython.embed(). In that case, just set the
calling program to "" or other logic in IPython will crash - for
instance when checking for command line arguments.
expand ANSI color support

adds support for 256 colors

does not yet add support for themed 16-color mapping ([01;38;5;[0-15])

closes #3617
add ansi background colors
add indexed-color in 256-color support
be pedantic about VT100 vs ANSI in comments
add ANSI color test notebook to examples/tests
raise UsageError for unsupported GUI backends

gives clearer, more concise message without traceback

closes #3609
Merge pull request #3071 from tkf/drun

Extend the `%debug` magic to also run a statement under the control of a debugger, if called with arguments.

If called with no arguments after an error has occurred, it continues to work as before.
Merge pull request #3623 from minrk/pylabusageerror

raise UsageError for unsupported GUI backends
Merge pull request #3618 from minrk/ansilinux

expand terminal color support (16 and 256 ANSI colors)
fix some unicode in zmqhandlers

prevented session identity from being set properly,
which in turn prevented stdin from working in the notebook in Python 3.

closes #3494
passing cell to showInPager, closes #3625
Merge pull request #3626 from ivanov/fix-3625

passing cell to showInPager

closes #3625
Use new entry point for python -m IPython
Merge pull request #3629 from takluyver/m-start-ipython

Use new `start_ipython` entry point for `python -m IPython`
comment reflects when the case below it can occur
Merge pull request #3632 from ivanov/no_sys_available

Set calling program to UNKNOWN, when argv not in sys (take #2)
Merge pull request #3624 from minrk/argunicode

fix some unicode in zmqhandlers

Prevented session identity from being set properly, which in turn prevented stdin from working in the notebook in Python 3.

closes #3494