Oh, right, I forgot the re-prompting smarts was embedded in the call to `prompt`.  It's been too long since I wrote this code. =)  And yes, more helpful error messages are always better, but that would probably require changing the way `prompt` and friends work (*e.g.* to take another argument which is a custom error message).  The current behavior is fine and if we want to improve it we can do that in a separate commit.