Add option to use color codes in non-tty contexts

This adds the `--color=<when>` option to the command to specify when the output should be colorized, where `<when>` is either `auto`, `always` or `never`.

Fixes #325.
This could use some input validation. You can also update the description for `nocolor` to indicate that it's deprecated and is an alias for `--color=never`. When I do a 2.0 I'll be able to remove `--nocolor` as long as it's marked deprecated.