Move some of the helper functions around; the new way isolates all the globals in runner.hpp where they belong, and provides some useful helper functions to make life easier if you're doing something weird.