make ConsoleReporter handle both stdout and stderr

ConsoleReporter now takes two PrintWriter, one for errors/warnings and
one for normal messages. The short constructor sets them to stderr and
stdout, respectively.

This finally makes scala(c) ouput like any normal program. For example:

$ scalac -help > /dev/null # will now print nothing

$ scala -nc -e "val" > /dev/null # will print an error message

$ scala -nc -e "printn(1)" > /dev/null # but this won't
SI-1264 make CompileSocket send the right things to stderr/stdout

This properly splits the output of fsc (from `scala -e`, scala worksheet,
etc.) between stderr (for warnings and errors) and stdout (for the
rest). With this change, fsc behaves the same as `scalac`.

This makes the fsc server prefix messages with the destination
([err]/[out]), and the client socket strip them and send the rest to the
client stderr/stdout.