Refactor RunCommand utils into CompileAndRunner; more work on JUnit

CompileAndRunner is shared with the AbstractRunTestCommand. For
some reason, though, the "compile" part never finishes for the
JUnitConfiguration. Also, before we can merge into mainline we'll
need to resolve the compile error reported in RunTest