plugins.py: Introduce templating with Jinja2

Instead of using simple text replacement, use Jinja2 which is a full
templating engine.

For now we only use it to set the page permalink. In future changes we
can also rework the output of plugin data to use the template.

Note that Jekyll still attempts to render the template file, and fails
with:

    Error reading file /site/tools/plugins.template.md: (<unknown>):
    did not find expected key while parsing a block mapping at line 2 column 1

However this does not cause any failure.

Feature: Issue 12446
Change-Id: I7b24b77aa826adea3beb7d7b9e7c78e34c55ef39
4 files changed