eval: Implement `provide()` function

This function can register vimscript callbacks that implements a C features.
The registered function is called by eval_call_provider.
eval/ex_cmds2/ops: Implement providers with eval_call_provider

Replace references to provider_call/provider_has with the new functions
eval_call_provider/eval_has_provider.
Remove os/provider.{c,h} and all of its references
runtime: implement python/clipboard with runtime scripts

- Move the python provider implementation(script_host.py) from the python-client
  repository to this one
- Use the `provide()` function to implement python/clipboard features
- Add runtime scripts for working with external plugins and hosts
- Add tests for the new runtime scripts