Ensure `this` is correct when delegating runner properties
Add bash+diff-based test harness