[WebNN] Add op support validation for decomposed WebNN ops (#23370)
- Some ONNX op are supported by decomposed WebNN ops, defines a
`decomposed_op_map` map to specific decomposed WebNN ops list.
- WebNN ops have various first input names such as 'a', 'input',
'inputs', etc. Defines a `webnn_op_first_input_name_map` map to record
special names other than 'input', and a `GetWebNNOpFirstInputName`
function to retrieve the first input name of a WebNN op.
- Check if the input and output data types are supported by each
decomposed WebNN op.
- Remove the unnecessary `CheckSingleOp` function, because WebNN's
`OpSupportLimits` has already covered op supported check.