Remove get_line from cli interface for now (can be added back if a derived command-line interface needs it) and prevent accidental calling of internal implementation of get_line that doesn't async first.
Remove is_interactive(), make process_commands an explicitly launched function for cli, add code to tee off cli output to a log file (or not, as desired by cli user).