[QNN EP] Add Infrastructure to check datatypes (#25257)
### Description
<!-- Describe your changes. -->
- Add BaseOpBuilder::ProcessDataTypes
- Add CheckCpuDataTypes, CheckHtpDataTypes and CheckGpuDataTypes
- Check if datatypes are supported on QnnCpu and QnnHtp for BatchNorm
- Add corresponding unit test for BatchNorm on QnnCpu and QnnHtp
### Motivation and Context
- Due to varying datatype support for each op on various backends
(QnnCpu, QnnHtp, QnnGpu), we need an infrastructure to check datatypes according to the document
https://docs.qualcomm.com/bundle/publicresource/topics/80-63442-50/operations.html#backend-supplements