Update terminal renderer output depending on shell

Bash and zsh have different ways of escaping colors in the prompt, this
update checks the $SHELL environment variable and uses the correct
escape sequence for the current shell.

A known issue with this method is that $SHELL doesn't get updated when
switching shells (i.e. if you're running /bin/bash when you're in a zsh
shell) so in rare cases rendering errors may occur. A workaround which
is much slower is to parse the output of `ps -p $$` which always returns
the current shell.