SI-7349 SI-7358 SI-7409 Par-Test inches forward

A failing scalacheck test generates a test failure instead of allowing the build to succeed.
The failure log is added to the transcript.

Updates Scalacheck to 1.10.1 and invokes it using the
test-interface API.  This obviates kludgy output checking for result
status.

Also, Partest testnum field width is sensitive to total tests.

Allow the hyphens to line up on a column within the output
for a test category or "kind".

Users are notified when check files are updated, and also when the compiler crashes instead of updating their check files.

Review by @soc and @adriaanm for build changes to use test-interface.jar.
Further review by @retronym who crept the feature.

Illustrations of behavior follow.  Here it is in black and white.  (In color at a screen near you.)
```
$ partest files/neg/t4134.scala --run
Selected 1348 tests drawn from 1 named test categories, specified tests

# starting 1 test in neg
ok 1 - neg/t4134.scala

# starting 1347 tests in run
ok    1 - run/absoverride.scala
ok    2 - run/amp.scala
ok    3 - run/adding-growing-set.scala
```

Partest --timeout "30 seconds" to time out the test run.  "I hang with Par-Test" no more!

```
ok   62 - pos/five-dot-f.scala                    
ok   63 - pos/functions.scala                     
Thread pool timeout elapsed before all tests were complete!
63/1067 passed, 1004 skipped (elapsed time: 00:00:30)
Test Run PASSED
```

```
$ partest files/neg/failtest.scala
Selected 1 tests drawn from specified tests

# starting 1 test in neg
!! 1 - neg/failtest.scala                        [output differs]
# 0/1 passed, 1 failed in neg

##### Transcripts from failed tests #####

# partest files\neg\failtest.scala
% scalac files\neg\failtest.scala
failtest.scala:3: error: value really is not a member of object Foo
    this.really("doesn't compile")
         ^
one error found

% diff files\neg\failtest-neg.log files\neg\failtest.check--- a
+++ b
@@ -1,4 +1,0 @@
-failtest.scala:3: error: value really is not a member of object Foo
-    this.really("doesn't compile")
-         ^
-one error found

0/1 passed, 1 failed (elapsed time: 00:00:01)
Test Run FAILED

apm@halyard /cygdrive/m/apm/projects/scala-second/test
$ partest --update-check files/neg/failtest.scala
Selected 1 tests drawn from specified tests

# starting 1 test in neg
++ 1 - neg/failtest.scala                        [updated check file]

1/1 passed (elapsed time: 00:00:01)
Test Run PASSED

apm@halyard /cygdrive/m/apm/projects/scala-second/test
$ partest --update-check files/neg/failtest.scala
Selected 1 tests drawn from specified tests

# starting 1 test in neg
ok 1 - neg/failtest.scala                      

1/1 passed (elapsed time: 00:00:01)
Test Run PASSED

```

```
$ partest --update-check files/neg/t7223.scala
Selected 1 tests drawn from specified tests

# starting 1 test in neg
unhandled exception while transforming t7223.scala
!! 1 - neg/t7223.scala                           [compilation failed]
# 0/1 passed, 1 failed in neg

##### Transcripts from failed tests #####

# partest files\neg\t7223.scala
% scalac files\neg\t7223.scala
error: no-symbol does not have an owner
[** transcript abbreviated **]
0/1 passed, 1 failed (elapsed time: 00:00:02)
Test Run FAILED
```