Refactor the Messages module and its usage

The status messages after actions ("OK", "ERROR(ybc)", etc.) are not
printed now. This makes the code more amenable to parallelization (the
lines won't be cut in half if actions run in parallel).
Colorize error and warning messages