- `mustache.zig` now returns a `Mustache` struct. This allows functions to be called
on the mustache instance, e.g. `zap.mustacheFree(mustache)` -> `mustache.free()`.
- Updated mustache example.
- Added doc strings to majority of mustache functions.
According to the facil.io docs
(http://facil.io/0.7.x/fiobj_mustache#fiobj_mustache_new):
> By setting the filename argument even when the data argument exists,
> it will allow path resolution for partial templates. Otherwise, there
> is no way to know where to find the partial templates.
This will allow partial templates to work.
However, this also introduces a breaking change to the existing
MustacheNew function. This change makes it mirror the C version where it
accepts a MustacheLoadArgs struct instead of just the data. That's also
a handy method to have, so I renamed that to MustacheData...maybe
there's a better name?