Correct sorting example for Ordering in scaladoc

	Below code snippet,
    Sorting.quickSort(pairs)(Ordering.by[(String, Int, Int), Int](_._2)

    should be
    Sorting.quickSort(pairs)(Ordering.by[(String, Int, Int), Int](_._2))
restored dependency of pack.done on quick.bin
run test.bc as part of tests on 2.10.x

also added test.bc-opt target as binary compatibility differs between (non)optimized builds...
remove unused ant targets: test.ant, test.classload, test.positions
Formatting. Introduce {asm,forkjoin,fjbg}-classes props.
Remove duplication in java builds of fjbg/asm/forkjoin
Preparation for faster PR validation

Added starr.number, so that `ant -propertyfile starr.number -Dlocker.skip=1`
works across branches.

Introduced target `test.core`, which skips `test.stability`, since that requires
`locker == quick`, whereas `locker == starr` with the above settings.
(It's interesting to see for which files it fails when that assumption is broken.)

Stability will still be tested on a nightly basis. It's rarely broken.
Let continuations library sources determine docs.lib's actuality
SI-6793 Don't use super param accessors if inaccessible.

"Alias replacement" has been with us since 2005 (13c59adf9).

Given:

    package a {
      class C1(val v0: String)
      class C2(v1: String) extends a.C1(v1) { v1 }
    }

The reference to `v1` is rewritten as `C2.super.v0()`, and
no field is generated in `C2`.

(Oddly, this optimization doesn't seem to kick in if
these classes are in the empty package. That's probably
a distinct bug.)

However, this rewriting is done without consideration of
the accessibility of `v0` from `C2`.

This commit disables this optimization if there if `v0` is
not accessible.
Scaladoc: Load scripts at the bottom, and with a defer attribute

To improve latency on modern browsers (which supports defer) and old browsers:

 * https://www.webkit.org/blog/1395/running-scripts-in-webkit/
 * http://developer.yahoo.com/blogs/ydn/posts/2007/07/high_performanc_5/
SI-7200 Test case for fixed type inference error.

Broken in 2.9.2 and 2.10.0, but working in 2.10.1

--- sandbox/2.10.0.log
+++ sandbox/2.10.1.log
       def coflatMap[A >: Nothing <: Any, B >: Nothing <: Any](f: Test.Nel[A] => B): Test.Nel[A] => Test.Nel[B] = ((l: Test.Nel[A]) => Test.this.Nel.apply[B](f.apply(l), l.tail match {
         case immutable.this.Nil => immutable.this.Nil
-        case (hd: A, tl: List[A])scala.collection.immutable.::[A]((h @ _), (t @ _)) => {
-          val r: Test.Nel[Nothing] = NelFoo.this.coflatMap[A, Nothing](f).apply(Test.this.Nel.apply[A](h, t));
+        case (hd: A, tl: List[A])scala.collection.immutable.::[?A1]((h @ _), (t @ _)) => {
+          val r: Test.Nel[B] = NelFoo.this.coflatMap[A, B](f).apply(Test.this.Nel.apply[A](h, t));
           {
-            <synthetic> val x$1: Nothing = r.head;
-            r.tail.::[Nothing](x$1)
+            <synthetic> val x$1: B = r.head;
+            r.tail.::[B](x$1)
           }
         }
       }))

b74c33eb86 represents the exact moment of progression. Comments
in pos/t7200b.scala, a minimal test that demonstrates the problem
without type constructors or code execution, pinpoint the line of
code responsible for the fix.

Incidentally, I'm currently on a train somewhere between Solothurn
and Biel, and am consequently without the power of scala-bisector.
Undeterred, and inspired by a line I saw in Skyfall last night
("sometimes the olds ways are better"), I just pulled off a two-hop
bisection. Take that, O(log N)!

The one remaining worry is the appearance of the type variable
?A1 in the output of -Xprint:typer for run/t7200.scala.
Run test.scaladoc before test.suite. Fail fast.
ant clean only zaps the quick stage
Clean up pack targets. Better dependency tracking.

Target pack.@{project} is considered up to date iff
classes emitted by quick.@{project} are.

TODO: encapsulate "classes emitted by quick.@{project}".
For now, they are duplicated as references
to `${build-@{stage}.dir}/classes/@{destproject}`
(in staged-scalac and *.build.path)
Merge pull request #2314 from adriaanm/build-fixes

further tweaks to the ant build
Use java-diff-utils for diffing in partest.

We now use the unified diff format, hence the updated check files.

It's not clear to me how partest's classpath is managed,
but the approach in this commit works for the ant task and script invocation.
The diffutils jar is injected in the parent classloader.
Strip version suffix from diffutils.
Merge pull request #2330 from adriaanm/partest-difftools

Use java-diff-utils for diffing in partest.
Merge pull request #2321 from kzys/js-defer

Scaladoc: Load scripts at the bottom, and with a defer attribute
get rid of args element in staged-scalac