log: Replace console output with a simpler output

This replaces the console spewer with a simpler console reporting
mechanism inspired by the output of ninja. This reduces code, remove all
singleton instances and speeds up piglit runs. There is a drawback, the
output is much more terse than the previous implementation, giving only
the following output:
[<finished>/<total>] Running Test(s): <test number>
[16008/16011] Running Test(s): 16007 16008 16009 16010

This means that one can't look at the output to readily see that all
tests are skipping or failing. However, since these problems are usually
related to environment setup, and not to piglit doing something wrong,
these should be moved to some kind of prerun check instead of relying on
user attentiveness. Since the test numbers update only when they are
completed and hung test can be spotted.

Performance examples:
Master:
./piglit-run.py -c tets/quick.tests foo 1065.64s user 373.48s system
295% cpu 8:06.35 total

With this patch:
./piglit-run.py -c tests/quick.tests foo  1045.33s user 353.20s system
315% cpu 7:23.56 total

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>