updated to use AnsiCodes instead of AnsiStd{out,err}
added AnsiStream.ansi_format() to handle ansi codes depending on isatty()
changed variable expansion to surround expanded text with quotes
updated to use AnsiCodes instead of AnsiStd{out,err}