benchmark demo working (see ext. commit desc.)

I'm thinking there's probably some benchmark page harness which does a lot of this work already, the main reason to go for that is not because refactoring this code would be hard (it does need a total overhaul but it was good to get a sense for the different parts of the logic) or that our needs are particularly complicated. It's that people might trust the results of that toolset more than they would my code without looking at it.