diff --git a/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/render/MustacheRenderer.java b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheRenderer.java
similarity index 95%
rename from tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/render/MustacheRenderer.java
rename to tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheRenderer.java
index 6714da3..19b831b 100644
--- a/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/render/MustacheRenderer.java
+++ b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheRenderer.java
@@ -19,7 +19,7 @@
  * under the License.
  */
 
-package org.apache.tiles.request.render;
+package org.apache.tiles.request.mustache;
 
 import java.io.BufferedReader;
 import java.io.IOException;
@@ -35,6 +35,8 @@
 import org.apache.tiles.request.ApplicationContext;
 import org.apache.tiles.request.ApplicationResource;
 import org.apache.tiles.request.Request;
+import org.apache.tiles.request.render.CannotRenderException;
+import org.apache.tiles.request.render.Renderer;
 
 /**
  * The Mustache-specific renderer.
diff --git a/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/extractor/MustacheScopeExtractor.java b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheScopeExtractor.java
similarity index 96%
rename from tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/extractor/MustacheScopeExtractor.java
rename to tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheScopeExtractor.java
index 6d9abab..2c839e2 100644
--- a/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/extractor/MustacheScopeExtractor.java
+++ b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheScopeExtractor.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.apache.tiles.request.extractor;
+package org.apache.tiles.request.mustache;
 
 import java.util.Collections;
 import java.util.Enumeration;
diff --git a/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/MustacheScopeMap.java b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheScopeMap.java
similarity index 94%
rename from tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/MustacheScopeMap.java
rename to tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheScopeMap.java
index e47d11e..f323588 100644
--- a/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/MustacheScopeMap.java
+++ b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/MustacheScopeMap.java
@@ -18,13 +18,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.tiles.request;
+package org.apache.tiles.request.mustache;
 
 import java.util.Set;
 
 import com.sampullara.mustache.Scope;
 import org.apache.tiles.request.collection.ScopeMap;
-import org.apache.tiles.request.extractor.MustacheScopeExtractor;
 
 
 final class MustacheScopeMap extends ScopeMap {
diff --git a/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/package-info.java b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/package-info.java
new file mode 100644
index 0000000..7422cdf
--- /dev/null
+++ b/tiles-request/tiles-request-mustache/src/main/java/org/apache/tiles/request/mustache/package-info.java
@@ -0,0 +1,24 @@
+/*
+ * $Id: package-info.java 1049711 2010-12-15 21:12:00Z apetrelli $
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+/**
+ * Support of Tiles request for Mustache.
+ */
+package org.apache.tiles.request.mustache;
diff --git a/tiles-request/tiles-request-mustache/src/test/java/org/apache/tiles/request/render/MustacheRendererTest.java b/tiles-request/tiles-request-mustache/src/test/java/org/apache/tiles/request/mustache/MustacheRendererTest.java
similarity index 95%
rename from tiles-request/tiles-request-mustache/src/test/java/org/apache/tiles/request/render/MustacheRendererTest.java
rename to tiles-request/tiles-request-mustache/src/test/java/org/apache/tiles/request/mustache/MustacheRendererTest.java
index 875e8f3..f5cb0ff 100644
--- a/tiles-request/tiles-request-mustache/src/test/java/org/apache/tiles/request/render/MustacheRendererTest.java
+++ b/tiles-request/tiles-request-mustache/src/test/java/org/apache/tiles/request/mustache/MustacheRendererTest.java
@@ -18,7 +18,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.tiles.request.render;
+package org.apache.tiles.request.mustache;
 
 
 import java.io.IOException;
@@ -30,6 +30,9 @@
 
 import org.apache.tiles.request.ApplicationContext;
 import org.apache.tiles.request.ApplicationResource;
+import org.apache.tiles.request.mustache.MustacheRenderer;
+import org.apache.tiles.request.render.CannotRenderException;
+import org.apache.tiles.request.render.Renderer;
 import org.apache.tiles.request.servlet.ServletRequest;
 import org.junit.Test;
 
