Fix some cleanup of NCNN classes during destruction.
- Slightly ugly vs. using unique_ptr for each class but works for now.
Enable specifying Vulkan in the perf test tool and onnx_test_runner.
Pass through EP options.
- More EPs could use this approach instead of re-implementing parsing of the options in multiple places.
Tested with 10 layer MatMul model. The layers all run. Not sure if output is correct though but all layers are executed at least so perf numbers should be valid.
- tested with `onnxruntime_perf_test -e vulkan -i "device_id|1" -I -r 1 matmul_10_128x128.onnx`
- model is from script I shared today
- I have discrete (device 0) and integrated (device 1) GPUs so I tried out both