Detects if the console is interactive; lets us make console-friendly output (e.g.
Detects if the console is interactive; lets us make console-friendly output (e.g. ansi color codes) if it is, and script-friendly output (no ansi codes) if it's not
https://stackoverflow.com/a/1403817/871202
The command-line entry point, which does all the argument parsing before delegating to Main.run
The logic of main, in a form that doesn't call sys.exit
and thus
can be unit tested without spinning up lots of separate, expensive
processes