### Description
Implement Optional Type metadata support in the library.
Implement optional support in C# API along with metadata.
Implement Sequence, Map, Optional test data support
and test execution.
Prune tests and provide more details for failing tests in C# code.
Note, this PR does not enable running onnx test models in C++.
### Motivation and Context
Opset18 optional type support.
* Introduce execution mode for clarity and extensibility; Change Python APIs accordingly; Replace DisableSequentialExecution API with EnableParallelExecution for clarity.
* Fix cuda build
* Modify the test slightly
* Make C and C# APIs consistent with Python.
* Mention OrtCreateSessionFromArray in C API doc
* review changes
* use enum for graph optimization level
* Use explicit values for enums
* updates...
* Add friendly enum for graph optimization levels in C, C# and Python APIs.
* Fix linux build
* Fix build breakage due to master merge
* PR comments
* initial commit
* More changes
* More changes
* Adding stuff back to the targets xml
* More changes v3
* More changes v4
* More changes v5
* More changes v6
* More changes v7
* More changes v9
* Disable CSharp tests for now
* More changes
* Revert file to same status
* Update props file for x86
* Change to usage of TargetArchitecture instead of PlatformTarget
* Update targets.xml
* Minor formatting nit fix
* Update based on PR comments