even more tests, fixed severe bug with autoescaping.

--HG--
branch : trunk
diff --git a/jinja2/nodes.py b/jinja2/nodes.py
index 9eb5460..0cccddf 100644
--- a/jinja2/nodes.py
+++ b/jinja2/nodes.py
@@ -431,6 +431,16 @@
         return cls(value, lineno=lineno, environment=environment)
 
 
+class TemplateData(Literal):
+    """A constant template string."""
+    fields = ('data',)
+
+    def as_const(self):
+        if self.environment.autoescape:
+            return Markup(self.data)
+        return self.data
+
+
 class Tuple(Literal):
     """For loop unpacking and some other things like multiple arguments
     for subscripts.  Like for :class:`Name` `ctx` specifies if the tuple