code: function(template) {
      if (template && !template.compiled) {
        // Set compiling flag on fragments, but don't turn it false until the outermost template is done
        var lastCompilingValue = this.compiling;
        this.compiling = true;
        // Set this before compiling so we don't get into infinite loops if there is template recursion
        template.compiled = true;
        template.bindings = compile(this, template);
        this.compiling = lastCompilingValue;
      }
      return template;
    }
docs: Takes a template instance and pre-compiles it
  @param  {Template} template A template
  @return {Template} The template