Merge branch 'develop'
diff --git a/README.md b/README.md
index 6566db4..d5814c3 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,9 @@
 
 ## Versions
 
-### develop
+### v0.4.0
+
+- Compatible with Apache PredictionIO 0.10.0-incubating
 
 ### v0.3.2
 
diff --git a/build.sbt b/build.sbt
index 8022d49..20cccdb 100644
--- a/build.sbt
+++ b/build.sbt
@@ -4,9 +4,9 @@
 
 name := "template-scala-parallel-recommendation"
 
-organization := "io.prediction"
+organization := "org.apache.predictionio"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % pioVersion.value % "provided",
-  "org.apache.spark" %% "spark-core"    % "1.3.0" % "provided",
-  "org.apache.spark" %% "spark-mllib"   % "1.3.0" % "provided")
+  "org.apache.predictionio" %% "apache-predictionio-core" % "0.10.0-incubating" % "provided",
+  "org.apache.spark"        %% "spark-core"               % "1.3.0" % "provided",
+  "org.apache.spark"        %% "spark-mllib"              % "1.3.0" % "provided")
diff --git a/project/pio-build.sbt b/project/pio-build.sbt
deleted file mode 100644
index 8346a96..0000000
--- a/project/pio-build.sbt
+++ /dev/null
@@ -1 +0,0 @@
-addSbtPlugin("io.prediction" % "pio-build" % "0.9.0")
diff --git a/src/main/scala/ALSAlgorithm.scala b/src/main/scala/ALSAlgorithm.scala
index ad9a050..17c2806 100644
--- a/src/main/scala/ALSAlgorithm.scala
+++ b/src/main/scala/ALSAlgorithm.scala
@@ -1,8 +1,8 @@
 package org.template.recommendation
 
-import io.prediction.controller.PAlgorithm
-import io.prediction.controller.Params
-import io.prediction.data.storage.BiMap
+import org.apache.predictionio.controller.PAlgorithm
+import org.apache.predictionio.controller.Params
+import org.apache.predictionio.data.storage.BiMap
 
 import org.apache.spark.SparkContext
 import org.apache.spark.SparkContext._
diff --git a/src/main/scala/ALSModel.scala b/src/main/scala/ALSModel.scala
index f0c7b7b..243c1d1 100644
--- a/src/main/scala/ALSModel.scala
+++ b/src/main/scala/ALSModel.scala
@@ -5,9 +5,9 @@
 
 import org.template.recommendation.ALSAlgorithmParams
 
-import io.prediction.controller.IPersistentModel
-import io.prediction.controller.IPersistentModelLoader
-import io.prediction.data.storage.BiMap
+import org.apache.predictionio.controller.IPersistentModel
+import org.apache.predictionio.controller.IPersistentModelLoader
+import org.apache.predictionio.data.storage.BiMap
 
 import org.apache.spark.SparkContext
 import org.apache.spark.SparkContext._
diff --git a/src/main/scala/DataSource.scala b/src/main/scala/DataSource.scala
index 36111b7..eea3ae6 100644
--- a/src/main/scala/DataSource.scala
+++ b/src/main/scala/DataSource.scala
@@ -1,11 +1,11 @@
 package org.template.recommendation
 
-import io.prediction.controller.PDataSource
-import io.prediction.controller.EmptyEvaluationInfo
-import io.prediction.controller.EmptyActualResult
-import io.prediction.controller.Params
-import io.prediction.data.storage.Event
-import io.prediction.data.store.PEventStore
+import org.apache.predictionio.controller.PDataSource
+import org.apache.predictionio.controller.EmptyEvaluationInfo
+import org.apache.predictionio.controller.EmptyActualResult
+import org.apache.predictionio.controller.Params
+import org.apache.predictionio.data.storage.Event
+import org.apache.predictionio.data.store.PEventStore
 
 import org.apache.spark.SparkContext
 import org.apache.spark.SparkContext._
diff --git a/src/main/scala/Engine.scala b/src/main/scala/Engine.scala
index 2f0ad39..79840dc 100644
--- a/src/main/scala/Engine.scala
+++ b/src/main/scala/Engine.scala
@@ -1,7 +1,7 @@
 package org.template.recommendation
 
-import io.prediction.controller.IEngineFactory
-import io.prediction.controller.Engine
+import org.apache.predictionio.controller.IEngineFactory
+import org.apache.predictionio.controller.Engine
 
 case class Query(
   user: String,
diff --git a/src/main/scala/Evaluation.scala b/src/main/scala/Evaluation.scala
index f744677..34e5689 100644
--- a/src/main/scala/Evaluation.scala
+++ b/src/main/scala/Evaluation.scala
@@ -1,16 +1,16 @@
 package org.template.recommendation
 
-import io.prediction.controller.Evaluation
-import io.prediction.controller.OptionAverageMetric
-import io.prediction.controller.AverageMetric
-import io.prediction.controller.EmptyEvaluationInfo
-import io.prediction.controller.EngineParamsGenerator
-import io.prediction.controller.EngineParams
-import io.prediction.controller.MetricEvaluator
+import org.apache.predictionio.controller.Evaluation
+import org.apache.predictionio.controller.OptionAverageMetric
+import org.apache.predictionio.controller.AverageMetric
+import org.apache.predictionio.controller.EmptyEvaluationInfo
+import org.apache.predictionio.controller.EngineParamsGenerator
+import org.apache.predictionio.controller.EngineParams
+import org.apache.predictionio.controller.MetricEvaluator
 
 // Usage:
 // $ pio eval org.template.recommendation.RecommendationEvaluation \
-//   org.template.recommendation.ParamsList
+//   org.template.recommendation.EngineParamsList
 
 case class PrecisionAtK(k: Int, ratingThreshold: Double = 2.0)
     extends OptionAverageMetric[EmptyEvaluationInfo, Query, PredictedResult, ActualResult] {
diff --git a/src/main/scala/Preparator.scala b/src/main/scala/Preparator.scala
index 6468e4b..8f2f7e4 100644
--- a/src/main/scala/Preparator.scala
+++ b/src/main/scala/Preparator.scala
@@ -1,6 +1,6 @@
 package org.template.recommendation
 
-import io.prediction.controller.PPreparator
+import org.apache.predictionio.controller.PPreparator
 
 import org.apache.spark.SparkContext
 import org.apache.spark.SparkContext._
diff --git a/src/main/scala/Serving.scala b/src/main/scala/Serving.scala
index cc5542c..38ba8b9 100644
--- a/src/main/scala/Serving.scala
+++ b/src/main/scala/Serving.scala
@@ -1,6 +1,6 @@
 package org.template.recommendation
 
-import io.prediction.controller.LServing
+import org.apache.predictionio.controller.LServing
 
 class Serving
   extends LServing[Query, PredictedResult] {
diff --git a/template.json b/template.json
index fb4a50b..d076ec5 100644
--- a/template.json
+++ b/template.json
@@ -1 +1 @@
-{"pio": {"version": { "min": "0.9.2" }}}
+{"pio": {"version": { "min": "0.10.0-incubating" }}}