diff --git a/project/build/funcheck.scala b/project/build/funcheck.scala
index b4e503d0eaa94af58caf64f0f1dd5584dbcec348..705da8b7e34d94b68cd899db00aa271eca78aa00 100644
--- a/project/build/funcheck.scala
+++ b/project/build/funcheck.scala
@@ -9,6 +9,7 @@ class FunCheckProject(info: ProjectInfo) extends DefaultProject(info) with FileT
 
   lazy val purescala      = project(".", "PureScala Definitions", new PureScalaProject(_))
   lazy val plugin         = project(".", "FunCheck Plugin", new PluginProject(_), purescala, multisetsLib)
+  // lazy val cp             = project(".", "Constraint programming plugin", new CPProject(_), purescala, multisetsLib, plugin)
   lazy val multisetsLib   = project(".", "Multiset Placeholder Library", new MultisetsLibProject(_))
   lazy val multisets      = project(".", "Multiset Solver", new MultisetsProject(_), plugin, purescala, multisetsLib)
   lazy val orderedsets    = project(".", "Ordered Sets Solver", new OrderedSetsProject(_), plugin, purescala)
@@ -17,6 +18,7 @@ class FunCheckProject(info: ProjectInfo) extends DefaultProject(info) with FileT
   lazy val extensionJars : List[Path] = multisetsLib.jarPath :: multisets.jarPath :: orderedsets.jarPath :: setconstraints.jarPath :: Nil
 
   val scriptPath: Path = "." / "funcheck"
+  val cpScriptPath: Path = "." / "scalac-cp"
 
   lazy val all = task { None } dependsOn(generateScript) describedAs("Compile everything and produce a script file.")
 
diff --git a/src/funcheck/CPPlugin.scala b/src/funcheck/CPPlugin.scala
index e39cc73d04e103343c4877a764953fbe44775664..386b5083cf56d7607d6f495b315e2498973db4a2 100644
--- a/src/funcheck/CPPlugin.scala
+++ b/src/funcheck/CPPlugin.scala
@@ -5,7 +5,7 @@ import scala.tools.nsc.{Global,Phase}
 import scala.tools.nsc.plugins.{Plugin,PluginComponent}
 
 /** This class is the entry point for the plugin. */
-class CPPlugin(val global: Global) extends AbstractPlugin {
+class CPPlugin(val global: Global) extends PluginBase {
   import global._
 
   val name = "constraint-programming"
diff --git a/src/funcheck/Extractors.scala b/src/funcheck/Extractors.scala
index bf92c52e2717c3e918250d215520fd2434851fb2..79ace4187aa2f9b2e1cf4da10a2cc18f4a0722af 100644
--- a/src/funcheck/Extractors.scala
+++ b/src/funcheck/Extractors.scala
@@ -5,7 +5,7 @@ import scala.tools.nsc._
 /** Contains extractors to pull-out interesting parts of the Scala ASTs. */
 trait Extractors {
   val global: Global
-  val pluginInstance: AbstractPlugin
+  val pluginInstance: PluginBase
 
   import global._
   import global.definitions._
diff --git a/src/funcheck/FunCheckPlugin.scala b/src/funcheck/FunCheckPlugin.scala
index 247c77f37dae6c37517c1961088bbb4e0b5fd72d..40f5df8f0f76672978d61c6efb139139fe74db55 100644
--- a/src/funcheck/FunCheckPlugin.scala
+++ b/src/funcheck/FunCheckPlugin.scala
@@ -5,7 +5,7 @@ import scala.tools.nsc.{Global,Phase}
 import scala.tools.nsc.plugins.{Plugin,PluginComponent}
 
 /** This class is the entry point for the plugin. */
-class FunCheckPlugin(val global: Global) extends AbstractPlugin {
+class FunCheckPlugin(val global: Global) extends PluginBase {
   import global._
 
   val name = "funcheck"
diff --git a/src/funcheck/AbstractPlugin.scala b/src/funcheck/PluginBase.scala
similarity index 81%
rename from src/funcheck/AbstractPlugin.scala
rename to src/funcheck/PluginBase.scala
index 07847a298f83a8a996c16871c83329fb43e32219..62a5e83e3fb62501806ec5694452bae1171b6ff7 100644
--- a/src/funcheck/AbstractPlugin.scala
+++ b/src/funcheck/PluginBase.scala
@@ -4,7 +4,7 @@ import scala.tools.nsc
 import scala.tools.nsc.{Global,Phase}
 import scala.tools.nsc.plugins.{Plugin,PluginComponent}
 
-abstract class AbstractPlugin extends Plugin {
+abstract class PluginBase extends Plugin {
   import global._
 
   var silentlyTolerateNonPureBodies: Boolean = false