diff --git a/lib/mustache.dart b/lib/mustache.dart
index ba7c513..9d5683b 100644
--- a/lib/mustache.dart
+++ b/lib/mustache.dart
@@ -1,15 +1,6 @@
 library mustache;
 
-@MirrorsUsed(metaTargets: const [mustache])
-import 'dart:mirrors';
-
-part 'src/lambda_context.dart';
-part 'src/node.dart';
-part 'src/parse.dart';
-part 'src/render_context.dart';
-part 'src/scanner.dart';
-part 'src/template.dart';
-part 'src/token.dart';
+import 'src/mustache_impl.dart' as impl;
 
 /// [Mustache template documentation](http://mustache.github.com/mustache.5.html)
 
@@ -30,7 +21,7 @@
       {bool lenient,
        bool htmlEscapeValues,
        String name,
-       PartialResolver partialResolver}) = _Template.fromSource;
+       PartialResolver partialResolver}) = impl.TemplateImpl.fromSource;
   
   String get name;
   String get source;
diff --git a/lib/src/lambda_context.dart b/lib/src/lambda_context.dart
index 2d634af..c5b9a73 100644
--- a/lib/src/lambda_context.dart
+++ b/lib/src/lambda_context.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
 
 /// Passed as an argument to a mustache lambda function.
 class _LambdaContext implements LambdaContext {
diff --git a/lib/src/mustache_impl.dart b/lib/src/mustache_impl.dart
new file mode 100644
index 0000000..2ecd10a
--- /dev/null
+++ b/lib/src/mustache_impl.dart
@@ -0,0 +1,14 @@
+library mustache.impl;
+
+@MirrorsUsed(metaTargets: const [mustache])
+import 'dart:mirrors';
+
+import 'package:mustache/mustache.dart';
+
+part 'lambda_context.dart';
+part 'node.dart';
+part 'parse.dart';
+part 'render_context.dart';
+part 'scanner.dart';
+part 'template.dart';
+part 'token.dart';
diff --git a/lib/src/node.dart b/lib/src/node.dart
index 5140574..2b1356a 100644
--- a/lib/src/node.dart
+++ b/lib/src/node.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
 
 void _renderWithContext(_RenderContext ctx, List<_Node> nodes) {
   if (ctx.indent == null || ctx.indent == '') {
@@ -229,7 +229,7 @@
   
   void render(_RenderContext ctx) {
     var partialName = name;
-    _Template template = ctx.partialResolver == null
+    TemplateImpl template = ctx.partialResolver == null
         ? null
         : ctx.partialResolver(partialName);
     if (template != null) {
diff --git a/lib/src/parse.dart b/lib/src/parse.dart
index 4c032f5..d90a866 100644
--- a/lib/src/parse.dart
+++ b/lib/src/parse.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
 
 List<_Node> _parse(String source,
              bool lenient,
diff --git a/lib/src/render_context.dart b/lib/src/render_context.dart
index c114380..ffc4d73 100644
--- a/lib/src/render_context.dart
+++ b/lib/src/render_context.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
 
 final RegExp _validTag = new RegExp(r'^[0-9a-zA-Z\_\-\.]+$');
 final RegExp _integerTag = new RegExp(r'^[0-9]+$');
@@ -17,7 +17,7 @@
       this.source)
     : _stack = new List.from(stack); 
   
-  _RenderContext.partial(_RenderContext ctx, _Template partial, String indent)
+  _RenderContext.partial(_RenderContext ctx, TemplateImpl partial, String indent)
       : this(ctx._sink,
           ctx._stack,
           ctx.lenient,
diff --git a/lib/src/scanner.dart b/lib/src/scanner.dart
index 20fc849..6f2b81b 100644
--- a/lib/src/scanner.dart
+++ b/lib/src/scanner.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
 
 class _Scanner {
   
diff --git a/lib/src/template.dart b/lib/src/template.dart
index 1e5643b..440e284 100644
--- a/lib/src/template.dart
+++ b/lib/src/template.dart
@@ -1,8 +1,8 @@
-part of mustache;
+part of mustache.impl;
 
-class _Template implements Template {
+class TemplateImpl implements Template {
  
-  _Template.fromSource(String source, 
+  TemplateImpl.fromSource(String source, 
        {bool lenient: false,
         bool htmlEscapeValues : true,
         String name,
diff --git a/lib/src/token.dart b/lib/src/token.dart
index 8e2e4dd..2683a04 100644
--- a/lib/src/token.dart
+++ b/lib/src/token.dart
@@ -1,4 +1,4 @@
-part of mustache;
+part of mustache.impl;
 
 class _Token {
   
