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).
it's ok to rely on `_.isEmpty(undefined)` being true, btw