Initial change to enable WebGPU EP to suport plugin API (#25705)
### Description
This is the first PR among a list of PRs to make WebGPU EP able to use
the plugin API (EP ABI).
This PR adds new build flags for WebGPU:
- `--use_webgpu shared_lib` to enable building WebGPU EP based on the
plugin API (EP ABI).
- keep `--use_webgpu` or `--use_webgpu static_lib` behavior no change.
Currently `--use_webgpu shared_lib` will fail, but it is fine because no
one is using it.
#### Why making small changes
Huge PR is very difficult to review. Splitting a huge PR into multiple
ones has the benefits that each small PR is relatively easier to review.
#### Plan
- [x] STEP.1 - Introduce build flags (this PR)
- [ ] STEP.2 - Changes some macros and util functions to support both
static and shared
- [ ] STEP.3 - Core implementation of EP API based WebGPU EP
- [ ] STEP.4 - Builds/Tests/etc.