Fix the number of columns for CLI error if running without terminal

tput will fail if there is no terminal, but this then causes an
error with str_pad later on which masks the original error.

Hardcode to 100 columns if there is no terminal attached.
Truncate ridiculously long argument output in the CLI view

If an argument needs more than 20 lines to render it should be
chopped off otherwise it's possible to scroll the actual exception
message out of the top of the screen.