Move runner into separate binary

This is so that tests can be updated independently of the runner.

Since both `flynn-test` and `flynn-test-runner` accept similar command line args, I've moved them into an `arg` package.