Refactor ApiFunction

Merged Ronan Lamy requested to merge branch/api_func-refactor into branch/default

Refactor ApiFunction and @cpython_api decorator, create @slot_function.

Merge request reports