Ant catches system.out calls and feeds them through the log, but we also
need to get success/failure codes when things go wrong. Throwing ant
BuildExceptions (which are a subclass of RTE) would be cool, but we cannot
of course do that outside of the tasks. Instead callers (including the
tasks) will have to know what RTE's to listen for and map them to messages.
This is actually better for ant as we can log these at the appopriate info
level so that a -verbose run is different from a -quiet run....