Update weight sharing tool to support plugin EPs (#26614)
### Description
- Updates the `ep_weight_sharing_ctx_gen` tool to support specifying a
plugin EP configuration (via JSON).
- Mark the `ep_weight_sharing_ctx_gen` tool as deprecated and add
notification to README that recommends the use the public Python ORT
APIs instead.
- Note we no longer publish a binary for this tool [as of ORT
1.22.2](https://github.com/microsoft/onnxruntime/pull/24895).
- Added an example Python script in the README.
- Added a Python unit test that tests compiling models with weight
sharing using an example plugin EP.
#### Tool usage
Create a JSON file that contains information about the plugin EP to
load/use (e.g., `example_plugin_ep_config.json`):
```json
{
"ep_library_registration_name": "example_plugin_ep",
"ep_library_path": "example_plugin_ep.dll",
"selected_ep_name": "example_plugin_ep",
"default_ep_options": { "option_key": "option_value" }
}
```
Call the `ep_weight_sharing_ctx_gen` tool with the `-p` command-line
option to specify the location of the above configuration file:
```console
$ ep_weight_sharing_ctx_gen.exe -p example_plugin_ep_config.json model_1.onnx,model_2.onnx
```
### Motivation and Context
Close the functionality gap between traditional provider-bridge EPs and
plugin EPs. This PR allows using plugin EPs with the tool that compiles
models with weight sharing.