initial category support, part of #121

Add support for categories to Acrylamid. Categories are either explicitly set
in the metadata section (`category: foo/bar`) or derived from the path of the
post, e.g. `content/projects/python/foo-bar.txt` will set the category to
`projects/python`.

    content/
    ├── projects
    │   ├── bla.txt
    │   └── python
    │       └── fuu.txt
    └── test
        └── sample-entry.txt

The directory structure above and the following conf.py configuration

    '/category/:name/': {'view': 'category', 'filters': 'summarize',
                         'pagination': '/category/:name/:num/'},

renders the following on `$ acrylamid compile`:

     create  [0.34s] output/2013/i-am-only-in-python/index.html
     create  [0.02s] output/2013/i-m-a-projects-post/index.html
     create  [0.01s] output/2012/die-verwandlung/index.html
     create  [0.00s] output/category/test/index.html
     create  [0.00s] output/category/projects/index.html
     create  [0.00s] output/category/projects/python/index.html

Both, bla.txt and fuu.txt are shown on the project listing, but only the
fuu.txt post appears on the projects/python listing.

To link to the category listing, use the following Jinja2 code instead of
the tag code:

   {% if 'category' in env.views and entry.category %}
       <p>categorized in
           {% for link in entry.category | categorize %}
               <a href="{{ env.path + link.href }}" rel="category">{{ link.title }}</a>
               {%- if loop.revindex > 2 -%}
               ,
               {%- elif loop.revindex == 2 %}
               and
               {% endif %}
           {% endfor %}
       </p>

This uses the new `categorize` filter which is available when you have the
category view enabled. It takes the category list from `entry.category` and
yields the hierarchical categories, e.g. projects/python yields projects and
projects/python.