Benchmark refactor

WIP to create a unified benchmark API.