Allow setting the layout template from content files

Using the "Layout" key, the template being used to render a file can be
changed in a per-file basis. Also, using "-" as value, the contents of the
file themselves are used as the template. The later is useful for standalone
templates.
Additional RFC822-format date attributtes

Implements the following attributes, which return a string with a timestamp
in RFC822 format:

* Page.rfc822date: Publication date of the file (as contained in metadata,
  falling back to file modification time).
* Page.file_rfc822date: Modification time of the file.
* Site.rfc822date: Date of the moment when the Site object has been created.
  Can be used to know e.g. when the site was last rebuilt.
Allow setting the output suffix from content files

The "Output-Suffix" key can be used in the metadata section of files to
specify an output suffix other than "html" (the default) for the output
file name.
Implement author-related attributes

Implements the following attributes:

* Page.author, Site.author.
* Page.author_email, Site.author_email.

When the Page-level attributes are not set, the values from the Site object
are used (useful for defining them as defaults in site.json)
Add template to render an Atom feed of the articles