More unit testing, this time with a couple of base classes and some related refactoring.
More 1.6->1.7 cleanup; made collection classes package-private to enforce (or at least, encourage) use of the base interface.