Extract useful things from ConsoleRunner and use them in SBTRunner

The first commit just bumps dependency versions.

This splits ConsoleRunner in two: AbstractRunner contains most of the
behavior but doesn't assume (or at least less that before...) that we
are running from the command line. ConsoleRunner extends it to do the
same as before.

Now SBTRunner also extends AbstractRunner (instead of AntRunner), to
get support for --grep, --update-check, and all other options, for
testing an explicit file, and for pretty output.

This requires changes on the scala-partest-interface side too
(SBTRunner's public API has changed).