Cached prompts

Even though Pyhoc works sufficiently quickly, I decided to cache the
prompts rather than have each prompt function called eight times.