allow for custom template variables

- allow the user to provide additional template variables, as they may be needed when they change `options.template`. Custom template variables are provided by passing a `template_vars` dictionary to the SM init method.
- remove an unneeded `_template` function; MooTools already has that feature.