The `rich.prompt.Prompt.ask` method does not print the prompt text on
the console provided. It simply calls the built-in `input` function.
The `input` function is broken and unconditionally prints the prompt
text to standard output.
To work around both of these dumb limitations, we need to print the
prompt text ourselves and pass an empty string to `Prompt.ask` to avoid
printing anything on stdout that doesn't belong.
To facilitate scripting, all status messages, etc. are now printed to the
standard error stream. If the standard output stream is not a terminal,
the name of the album to be ripped is printed there, on the assumption that the
calling script is capturing it, e.g. in a variable.
*Rupert* ("Ripper") is a tool to rip CD (and eventually DVD) media
(almost) automatically. It converts CDDA to WAV using `cdparanoia`,
encodes the output with `flac`, and adds metadata tags from MusicBrainz
using *mutagen*. The console user interface is provided by *rich*.