tried to fix idle
Document how test_message_spec works
Add version_request/reply messaging protocol
Add a test for version_request in test_message_spec.py
Change version protocol according to the discussion in #2649
Remove version field from msg_header
Start protocol version from 4.0
Rewrite VersionReply spec using List and Unicode
Fix test failure in Python 2.6
Document version request messaging protocol
Document ipython_version bit more
Rename version_rep/req to kernel_info_rep/req
rename the file to lib/editorhooks.py and chance string template to {} formating
editorhooks working with qtconsole
Rename remnant of version_request/reply protocol
try to fallback to pysqlite2.dbapi2 as sqlite3

for situations where Python is built without sqlite3 and
can not easily be changed, it would be nice to still be
able to get history with pysqlite2.
BUG: Logging a rare error condition would have failed.
BUG: Solve 2to3 conversion error.

One of the methods in the inprocess kernel objects used
a local variable called `raw_input` that was mistakenly
converted to `input` during the 2to3 conversion.
BUG: In inprocess tests, use input/raw_input depending on Python version.
add `%%px --local` for local execution

So that a cell can be run on engines *as well as* the local namespace.

Prompted by SO Question [14184621](http://stackoverflow.com/questions/14184621).