Filter mode

Operate in filter mode.

E.g. `g++-3.4.5 -Wall -c foo.c 2>&1 | colorgcc`.

This gives us a lot of flexibility, because we can use a broad range of gcc
versions and wrappers without having to create a symlink for each and every
one.  Furthermore, we can redirect the output into e.g. less, since the
"STDOUT is terminal" check is skipped in filter mode.

This is based on [a patch by Wayne Davison submitted for Gentoo](https://bugs.gentoo.org/show_bug.cgi?id=15387#c13).

This branch builds on my branch for strict mode, so if you don't like filter mode, feel free to use strict mode on its ownby simply merging only the first of these commits here.