Support message and date/time localization within Freemarker and Jade templates

Add template engine helpers for accessing localized messages (e.g. `i18n("key.name")`), helpers for formatting localized relative dates (e.g. `prettyTime(aDate)`), and helpers for formatting localized date/times (e.g. `formatTime(aDate, "full")`).

To showcase these improvements a new Freemarker demo app has been created and the Jade demo app has ben rewritten to be a Jade-variant of the Freemarker demo.

Also add Trimou, Pebble, and Groovy engines that support the same featureset of the Freemarker and Jade engines.

This satisfies #7.