Selectively enable colors

This PR makes sure colors are only enabled when:

1. The output stream is a TTY
2. Color support is enabled when on Windows (`Win32::Console::ANSI` is defined)

This is a potential fix for #31.

Known issues:

* Having `$stdout` in a String extension is ugly. It would probably be a good idea to get rid of the `String` extensions and have a `StringFormatter` instead. This is out of scope for this PR though.

Future ideas:

* Have a `HelpTheme` class that handles formatting of help messages.