[webgpu] refactor initialization of WebGPU Context params (#26855)
### Description
refactor initialization of WebGPU Context params
The refactor:
- makes all WebGPU options into ~~3~~ 2 classes:
- `WebGpuExecutionProviderConfig`: configuration that passed to and
stored inside the EP class.
- ~~`WebGpuContextCreationParams`: configuration that passed to
constructor of class `WebGpuContext`.~~
- ~~`WebGpuContextInitializationParams`: configuration that passed to
`WebGpuContext::Initialize()`.~~
- `WebGpuContextConfig`: configuration that passed to construct and
initialize `WebGpuContext`.
- ensure all instance of the classes are created with default value
initialized.
- ensure all of the following happens only at one place:
- setting default value
- parse option
- add `WebGpuContextFactory::DefaultContext` to allow "get or create"
the default context.
### Motivation and Context
- Make code more clean and consistent.
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>