Factor out CLI.primary_prompt and CLI.secondary_prompt

I'm unsure if this is properly conforming to the specs. zsh and bash
both actually set PS1 and PS2 rather than providing defaults. csh and
fish both provide defaults without specifying these variables.