Add support for Python 3's keyword-only arguments.
Review Request #9341 — Created Oct. 31, 2017 and submitted
This allows kgb to support the new keyword-only arguments in Python 3.
This requires some changes in the calls needed for introspecting spied
functions, creating forwarding functions, and calling original
functions. Otherwise, things work the same as any other keyword argument
This is the first change to introduce unit tests specific to Python 3.
The test runner will automatically run these when running on Python 3,
but will ignore them on Python 2.
Unit tests pass on Python 2 and 3.