Add testing infrastructure to verify opengl interop works.

We need to really test the interop code with all device adapters
to verify that it works under all uses cases. To do that I am
adding infrastructure that makes it easy to test the interop
code with any device adapter.
More changes to benchmark.
More changes for testing.
More changes to benchmark.
more changes for testing.