Add a --preview flag for rendering posts that are not published (#374 & #41)

This commit behaves a bit differently than #374, but accomplishes the same task. We collect posts to not be published, then, if the `--preview` flag is present, still render them. These posts are not processed for tags or categories, so they will not change other parts of your site.

I've got a secondary reason for how I wrote this patch as well: I need unpublished_posts to be stored for later processing with another project of mine.

Feedback or ideas? I'm happy to spend a little time to get this upstream. Thanks.