Fix compile warnings

Ant complains about `includeantruntime` not being set.

    [javac] build.xml:136: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds

The Ant runtime was required for one javac, but not the rest.

Java complains unchecked operations.

    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.

I added `-Xlint:unchecked` and then resolved all existing warnings.

This has to come first in the class definition, due to a [Java compiler bug](http://stackoverflow.com/questions/13829753/java-generics-suppresswarningsunchecked-mystery) where the warning is not suppressed.