definitely let's not expose the idea that this last parameter is a 'gcfParameter' here. Benchmarker doesn't know about gcf (and we're just about to start a story about being able to use the rest api instead). I think we should keep Timed as-is, if you want more control over how we time something, use TimedWithWorker and pass a worker that acts however you like (see my comments about using a CompositeWorker when we want to execute a series of tasks elsewhere). What do you think?