Scenegraph benchmark

WIP: This PR adds a benchmark example for comparing scenegraph performance to similar optimal implementations. 

The intent is to add more benchmark examples and optimizations until we get comparable performance (or decide that we will never get comparable performance).
This should probably be in the `else` clause of the `try/except`, it seems a bit conceptually cleaner