bugfix: Tester completes as soon as there's a SubmissionResult

This is necessary for, e.g., handling compilation failures, which
should prevent attempts to execute the program.  I stupidly broke
this in an attempt to simplify the code (having forgotten why
this was necessary for correctness.)
bugfix: use strcmp, not strncmp, to compare test case names

The bug was that strncmp(argv[1], "t1", 2) returns true
if argv[1] contains any string that *starts with* t1, such as
(e.g.) "t10".  Duh.