add signature_scheme to Session and connection files

also change default hash to sha256 instead of md5, since md5 is bad.
(this is the main motivation)
propagate signature_scheme config to parallel connection files
document the wire protocol
remove unimplemented message types from the messaging doc
fixes to completion and connect messages
set some topics on IOPub messages

these are informally defined and have no effect,
but we should be a bit better with them.
add some detail to the wire protocol
add missing comma
fix raw_input in qtconsole

adds a flush, whose absence produced mis-measured prompts,
including the prompt in the raw_input reply.

closes #3785
convert IPython syntax to Python syntax in nbconvert python template

adds ipython2python filter
Change logo link to ipython.org; fixes #1366
there's no place like home
Merge pull request #3794 from jhamrick/docs-logo-link

In the docs, change logo link to ipython.org
Merge pull request #3793 from jhamrick/master

Disable autotooltip if no docstring 

This will disable the tooltip if there's no docstring, after ( is typed. Pressing tab to request the tooltip will still bring it up. This hasn't been tested against the Julia kernel, however.

Closes #3788
Merge pull request #3749 from minrk/pytransform

convert IPython syntax to Python syntax in nbconvert python template

adds ipython2python filter and uses it in python.tpl
Merge pull request #3756 from minrk/wiredoc

document the wire protocol

in the messaging doc

also update the digest scheme to use sha256 and make this configurable,
since md5 is the previous default and has been shown to be bad.

More messaging docs to update here:

- [x] remove get/setattr on kernel
- [x] remove crash messages
- [x] completion requests do not behave as documented
- [x] object_info is misdocumented (`name` is actually `oname` in object_info_request)
Merge pull request #3789 from minrk/qt-raw-input

fix raw_input in qtconsole