Executing scripts and reading stdout/stderr is probably too low-level.
I think we need a Python/Twisted (or whatever language Torperf will be
written in) interface for running an experiment and retrieving results.

You're probably right on stdout/err being too low level, but most experiments would be reusing the provided implementation, just wrapping them in a simple manner. Anyway I think there's a language agnostic way to get this working, without forcing any extensibility on matching Torperfs language of choice. I've tried to be pretty generic in my attached changes. :)
 
Well, thanks for your input!  As I said above, it would help a lot if
you added these ideas to the appropriate sections of the design document.

Please see attached. 

Regards,
Kevin