make ant find correct test names

JUnit kept dying, saying `class XYZTest doesn't exist`. The problem
was that all test classes were in the test package, and it thought they
were in the default package.

The fileset provided to batchtest needs to be constructed so that
each file name has the full package in it. So construct the fileset
with bin as the root and test/*Test* as the tests to run.

Also add `haltOnError` so that problems can be found and diagnosed, and
so that the build target will fail if there are such problems.
fix batchtest fileset not to match internal classes

The match `*Test*` also grabbed files like
`SentenceTest$TestSpan.class`, which is a compiled inner class, not a
separate test class. JUnit was complaining that a test class should
have exactly one zero-argument constructor.

Since all test classes end in `Test`, match `*Test.class` instead.