Added option to set the publish date of a post

Previously, Static used an item's created date as its publish date. This
led to inaccurate publish dates when a post was created and not
immediately published. As a workaround, users could edit the plist
associated with the post's file to change the created date, but this was
cumbersome.

This commit allows users to specify the publish date by adding a date
string meta value (in `%Y-%m-%d %H:%M:%S` format) under a page's
"pubdate" meta key. This is treated as an override; if the meta value is
not found or cannot be parsed, the page generation code reverts to the
createdDate.

The algorithm to accomplish this is as follows:

- Asks a `VPItem` (`id<VPData>`) object for a meta value for the key
  "pubdate".
- If one is found, it attempts to parse the associated value into an
  NSDate.
- If successful, that date is used as the published date, instead of the
  item's createdDate.
- If unsuccessful, it reverts back to the createdDate.

Changes were made to `VPBWriter.m` to use the pubdate in the archive
page and RSS feed. Similar changes were made to `VPStaticExportScript`
and `VPStaticPageEntryTemplate`.

Ideally, a `pubDate` property would be added to `VPItem`. This would
eliminate the repeated code in these three places. However, since
`VPItem` is not part of the VPPlugin framework, and `VPData` is only a
protocol, that wasn't feasible.
Refactoring to remove duplicated code.

I didn't realize that code in VPStaticExportScript was visible to other
scriptlets. Added pubDateForItem in VPStaticExportScript which is now
called from staticExportArchivePathForItem and used by
VPStaticPageEntryTemplate.