complete builtin and cython with embededsignature=True
by parsing first line of docstring
docstring for _default_arguments_from_docstring
more robust docstring parsing and docstring parser test

now it can parse cython method like
Minuit.migrad(self, int ncall=10000, resume=True, int nsplit=1)\n
__call__ should not use class docstring
cache regexp and PEP8
couple more PEP8 in test
_default_arguments_from_docstring docstring style
couple typo in docstring
use splitlines instead of StringIO.readline and rebase
fix payload keys

A few changes left out from PR #2854

prevented pager or set_next_input (%load) from working in the notebook.
Add key "unique" to history_request protocol
Document the key 'unique' in messaging protocol
Be explicit about default value for unique
Document version added for unique key
Merge pull request #2872 from minrk/fixpayloads

fix payload keys
Merge pull request #2792 from tkf/history-unique-protocol

Add key "unique" to history_request protocol
Merge pull request #2599 from piti118/docstring_keyword

func_kw_complete for builtin and cython with embededsignature=True using docstring

better keyword completion, including docstring introspection and Cython embeddedsignature=True.