Clear OrderedReport, Order, TestInstance designs.

We made designs of OrderedReport, Order, and TestInstance.  Earlier, by
looking at interfaces of OrderedReport and TestInstance, clients
couldn’t easily make out how they can generate reports, ordered by size
or method, using OrderedReport and TestInstance.

That’s because we based the previous design NOT on explicit comparators
but rather on a combination of Comparable and Comparator
implementations.  But the problem with such a design is that it NEVER
makes it explicit to clients which of these orderings (Comparable &
Comparator) should be used to order by size or by method.

We fixed this problem here.  Now TestInstance offers explicit methods
for size and method comparators.  And OrderedReport has just 1
constructor, and it takes a comaparator.  Clients can get the right
comparator from TestInstance and use it to create the right
OrderedReport.

We made another change in this release: In TextDocument, we moved the
static class variables closer to the location of their use — within the
contents() method. These variables are no longer static but final local
variables within content().