Use print subcommand when printing a prompt.
Move the contents of impromptu-client into impromptu-print.

The print subcommand is now the only user of the client, and is also capable of determining whether or not to use the server in the first place.
Use a single method for the prompt command.
Move the check for update_terminal_cwd into the prompt command.

This check didn't belong in the print subcommand (as it's needed specifically for prompt generation). The previous version also would only run update_terminal_cwd when using the socket server, when it should be run whenever a prompt is generated.