Level Graphs: Generating Benchmarks for Concurrency Optimizations in Compilers