[WebGPU] Add enableFeatures and disableFeatures for EP feature management (#33481)
### Description
Introduce generic `enableFeatures` and `disableFeatures` lists for named
WebGPU EP features, initially supporting `subgroupMatrix`.
The feature registry is independent of WebGPU device features. Each
session’s execution provider filters kernel-facing feature queries
according to its settings, including when using an externally supplied
device.
Disabling `subgroupMatrix` selects existing fallback kernels for that
session. Sessions sharing a device configure features independently,
regardless of creation order; omitted features use registry defaults.
#### Usage:
- JS (onnxruntime-web / onnxruntime-node):
```
executionProviders: [{ name: 'webgpu', disableFeatures:
['subgroupMatrix'] }]
```
- C++ provider options / session config entry:
```
session_options.AddConfigEntry(
"ep.webgpuexecutionprovider.disableFeatures", "subgroupMatrix");
```
### Motivation and Context
See above.