First implementation of util.template()

The util.template function allows for better translations through dynamic positioning of place markers. The range of place markers runs from %1 to %99, but normally no more than two or three should be required. There are no provisions for escaping place markers.
```lua
output = util.template{
    _("Hello %1, welcome to %2."),
    name,
    company
}
```
This function was inspired by Qt:
http://qt-project.org/doc/qt-4.8/internationalization.html#use-qstring-arg-for-dynamic-text