Fix crash on Mac OS X, accessing stdout during static initialisation.

I was seeing a crash during static initialisation on Mac OS X, inside the non-Windows shouldUseColourForPlatform (which uses isatty(fileno(stdout)) to determine if stdout is a tty).

That appeared to work OK on one machine, but running the same tests on another Mac would frequently crash inside fileno at that point (my guess is that since stdout is an extern FILE* on Mac OS X, it hasn't been initialised yet).

This patch defers creating the IColourImpl (and hence testing stdout) until we first use it.