Consolidate user interactions into interaction.py
Consolidate the various bits of code which interact with the user down
a small number of functions in one file. This will make it easier to
add alternate user interfaces in the future.
Note: The prompts of some programs may be formatted somewhat
differently than before.