Add support to embed videos.
Add is_complete request and reply to messaging infrastructure
Expose IPython machinery for testing code completeness
Document is_complete messages

Also, bump message spec version
Four possible states for completion reply, & indent hint
Set protocol version number back to 5.0

Bumping to 5.1 wasn't necessary, because we're still finalising 5.0
(thanks @minrk)
remove cython extension.

Now in cython package itself, as stable.
remove Cython Built-in extension notebook
remove more ref to cythonmagic
use Cython.load_ipython_ext to simplify
add whatsnew and uppercase C in load_ext

Use uppercase as this is what is in cython docs.
Make comm manager (mostly) independent of InteractiveShell

This makes it possible to use comms from wrapper kernels, without
instantiating the full IPython shell machinery.

The one remaining place where we need a reference to shell is to fire
pre_execute and post_execute hooks (which are needed to get mpl figures
right). This is a pure IPythonism, that it should be safe to ignore if
shell is not set.
Make comm_manager a property of kernel, not shell
Safeguard against comm instantiation with both session and kernel (corner case)
add new FilesHandler to serve files from ContentsManager.
add new FilesHandler class
add tests for file download via ContentsManager
mark binary properly as binary for python 3
get bin test file to pass. (2nd try)
3rd