So an instance of `DisposeAction` is returned from `context.TraceContextFor`. But the only spot `context.TraceContextFor` is used it already wrapped in a try+finally. So just return an `Action` from `context.TraceContextFor` and call that in the finally. then `DisposeAction` is not required