Create REST API for kernel specs
Test kernel specs REST API

And fix kernel not found producing a 404 code.
Refactor kernelspec resource handler to separate URL prefix
Put full kernel info in REST API response for all kernels
Kernel resource handlers now require authenticated user
handle error code > 128 in system_raw like system_piped

some shells, such as csh and fish, return a different exit code format
from sh, bash, which subprocess.call doesn’t properly transform.
test exit code with csh

if available, because csh exit codes can differ from sh/bash
Merge pull request #6006 from minrk/ec128

handle error code > 128 in system_raw like system_piped
Use stdlib json, not zmq jsonapi
only use zmq.jsonapi when talking to zmq sockets

use stdlib json otherwise
Merge pull request #5827 from takluyver/kernelspec-rest-api

Kernel specs REST API
Print sources for property fget/fset/fdel methods

This commit incorporates a backward-incompatible change:
`core.oinspect.getsource` will no longer accept `is_binary` kwarg.
core.interactiveshell.ofind: don't evaluate property.fget (it may raise)
Use inspect.getdoc when populating _builtin_type_docstrings

IPython.core.oinspect.getdoc uses inspect.getdoc which
strips some whitespace internally and because of that

    inspect.getdoc(property) != property.__doc__
Merge pull request #6011 from minrk/no-jsonapi

only use zmq.jsonapi when talking to zmq sockets
Merge pull request #4827 from immerrr/print-property-getter-setter-deleter-sources

Print sources for fget/fset/fdel property methods