Show revamp

Complete rewrite of 'meteor show', with tests. See commit messages for more details.

This is part of the work on the Meteor tool to get longform package descriptions from README.md files into 'meteor show'. It is safe-contained enough, that it makes sense to submit it for review.

(I won't merge to devel until all the README work is complete -- note that this is being pulled to a staging branch).
I guess it seems like one of the most important arguments to the function, and I'm not sure why putting it into the options dictionary makes things more readable. In general, I feel like the pattern of hiding a lot of arguments in the "options" makes it hard to see what is up with the function based on the signature, and forces you to rely on the comments and reading the code of the function.