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
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.