update completion_ and objection_info_request

both requests take:

- code (up to full cell)
- cursor_pos (cursor offset in unicode characters)

and object_info_replies return a mime-bundle, instead of structured data
move banner to base InteractiveShell class
add banner to kernel_info_reply
add kernel banner to terminal and qt frontends
add implementation and implementation_version to kernel_info_reply
remove `source` key from display_data
pager payload is a mime-bundle
checkpoint
checkpoint