Program-ify everything in test suite.
Previously, in some cases we would carry around an explicit FilePath for an executable that we wanted to invoke subsequently. In this new scheme, any executable we want to execute gets registered to the ProgramDb we are carrying around. Now we can uniformly use runProgramM in all cases. Great! Signed-off-by: Edward Z. Yang <email@example.com>