Disable CF_COLOR when not in a tty

This only changes the default when CF_COLOR is not specified.
CF_COLOR=true continues to be the default on non-windows systems when
running in a tty. When NOT in a tty, after this change CF_COLOR defaults
to false (but you can explicitly enable colours in this case by setting
it to true, rather than leaving it empty). CF_COLOR=false always
disables, CF_COLOR=true always enables (unless you're on windows),
CF_COLOR not set does something intelligent based on whether stdout is a
terminal.

Also gets rid of .hg directory in src/code.google.com/p/go.net.
Make color package a little more consistent

Noticed a few things while merging in @julz PR.

* colour -> color (consistency is nice)
* there was an extra boolean tacked onto each function call. Adding two
  functions to handle colorized text and colourized + bold text was easy.
* The branching in Colorize was making it less readable. Adding a separate
  step where we determine *how* to colorize, and then just delegating to that
  function seems a lot easier. Unsure if this is the best pattern for this,
  because the path to what function to call is a little more roundabout.