make prompts exit gracefully when they're done

Currently promptDfd, askYesNoQuestion, and passPromptDfd do not exit
gracefully when we're done with them and require that upstream code that
calls them call process.exit() to actually end the process unless the
use types an End of Transmission character (^D).

promptDfd and askYesNoQuestion use a readline Interface and can be
gracefully closed with prompts.js' "closePrompt" method.

passPromptDfd does *not* use a readline Interface and requires that we
manually call stdin.pause() to close it gracefully.