In most cases where this function is used, suppressing only the standard
output is more appropriate. Culling diagnostic output hides error
messages and makes debugging more difficult and confusing.
`$DRY_RUN_NULL`, which the `--silence` flag replaced, was used both for
suppressing standard output on its own, and for doing so along with
diagnostic output; however, when the `run` function was added this
distinction was lost, and both outputs would be discarded.
This reintroduces the needed functionality, and changes usages of
`--silence` to `--quiet` where previously only standard output was
suppressed, or where this should have probably been the case anyway.
Change-Id: Ifb1b52a1d1eea0117261c782d686ad7c71b43162
Specifically, if `tput colors` fails with an error we treat that as if
the terminal does not support colors.
Fixes#423
Suggested-by: PhotonQuantum <self@lightquantum.me>