public static function factory()
{
$m = new Mustache_Engine(array('loader' => new Mustache_Loader_Kohana(), 'partials_loader' => new Mustache_Loader_Kohana('templates/partials'), 'escape' => function ($value) {
return HTML::chars($value);
}, 'cache' => Kohana::$cache_dir . DIRECTORY_SEPARATOR . 'mustache'));
$class = get_called_class();
return new $class($m);
}