Move tests to separate directory
diff --git a/common/charmonizer.c b/common/charmonizer.c
index 5393e6b..4c4bff0 100644
--- a/common/charmonizer.c
+++ b/common/charmonizer.c
@@ -8593,6 +8593,7 @@
     /* Directories. */
     const char *base_dir;
     char       *core_dir;
+    char       *test_dir;
     const char *host_src_dir;
     char       *autogen_src_dir;
     char       *autogen_inc_dir;
@@ -8781,6 +8782,7 @@
     /* Initialize directories. */
     self->base_dir = "..";
     self->core_dir = chaz_Util_join(dir_sep, self->base_dir, "core", NULL);
+    self->test_dir = chaz_Util_join(dir_sep, self->base_dir, "test", NULL);
     if (chaz_CLI_defined(cli, "enable-perl")) {
         self->host_src_dir = "xs";
     }
@@ -8858,6 +8860,7 @@
     chaz_MakeFile_destroy(self->makefile);
 
     free(self->core_dir);
+    free(self->test_dir);
     free(self->autogen_inc_dir);
     free(self->autogen_src_dir);
     free(self->lemon_dir);
@@ -8978,6 +8981,7 @@
 
     chaz_MakeBinary_add_src_dir(self->lib, self->host_src_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->core_dir);
+    chaz_MakeBinary_add_src_dir(self->lib, self->test_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->snowstem_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->snowstop_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->utf8proc_dir);
@@ -9032,21 +9036,24 @@
 
     sfc.var = chaz_MakeFile_add_var(self->makefile, "CLOWNFISH_HEADERS", NULL);
     chaz_Make_list_files(self->core_dir, "cfh", S_cfh_file_callback, &sfc);
+    chaz_Make_list_files(self->test_dir, "cfh", S_cfh_file_callback, &sfc);
 
     rule = chaz_MakeFile_add_rule(self->makefile, self->autogen_target, NULL);
     chaz_MakeRule_add_prereq(rule, "$(CLOWNFISH_HEADERS)");
     if (cfish_prefix == NULL) {
         cfc_command
             = chaz_Util_join("", "cfc --source=", self->core_dir,
+                             " --source=", self->test_dir,
                              " --dest=autogen --header=cfc_header", NULL);
     }
     else {
         cfc_command
             = chaz_Util_join("", cfish_prefix, dir_sep, "bin", dir_sep,
-                             "cfc --source=", self->core_dir, " --include=",
-                             cfish_prefix, dir_sep, "share", dir_sep,
-                             "clownfish", dir_sep, "include",
-                             " --dest=autogen --header=cfc_header", NULL);
+                             "cfc --source=", self->core_dir, " --source=",
+                             self->test_dir, " --include=", cfish_prefix,
+                             dir_sep, "share", dir_sep, "clownfish", dir_sep,
+                             "include --dest=autogen --header=cfc_header",
+                             NULL);
     }
     chaz_MakeRule_add_command(rule, cfc_command);
 
diff --git a/common/charmonizer.main b/common/charmonizer.main
index 15a2061..e08fdfc 100644
--- a/common/charmonizer.main
+++ b/common/charmonizer.main
@@ -45,6 +45,7 @@
     /* Directories. */
     const char *base_dir;
     char       *core_dir;
+    char       *test_dir;
     const char *host_src_dir;
     char       *autogen_src_dir;
     char       *autogen_inc_dir;
@@ -233,6 +234,7 @@
     /* Initialize directories. */
     self->base_dir = "..";
     self->core_dir = chaz_Util_join(dir_sep, self->base_dir, "core", NULL);
+    self->test_dir = chaz_Util_join(dir_sep, self->base_dir, "test", NULL);
     if (chaz_CLI_defined(cli, "enable-perl")) {
         self->host_src_dir = "xs";
     }
@@ -310,6 +312,7 @@
     chaz_MakeFile_destroy(self->makefile);
 
     free(self->core_dir);
+    free(self->test_dir);
     free(self->autogen_inc_dir);
     free(self->autogen_src_dir);
     free(self->lemon_dir);
@@ -430,6 +433,7 @@
 
     chaz_MakeBinary_add_src_dir(self->lib, self->host_src_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->core_dir);
+    chaz_MakeBinary_add_src_dir(self->lib, self->test_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->snowstem_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->snowstop_dir);
     chaz_MakeBinary_add_src_dir(self->lib, self->utf8proc_dir);
@@ -484,21 +488,24 @@
 
     sfc.var = chaz_MakeFile_add_var(self->makefile, "CLOWNFISH_HEADERS", NULL);
     chaz_Make_list_files(self->core_dir, "cfh", S_cfh_file_callback, &sfc);
+    chaz_Make_list_files(self->test_dir, "cfh", S_cfh_file_callback, &sfc);
 
     rule = chaz_MakeFile_add_rule(self->makefile, self->autogen_target, NULL);
     chaz_MakeRule_add_prereq(rule, "$(CLOWNFISH_HEADERS)");
     if (cfish_prefix == NULL) {
         cfc_command
             = chaz_Util_join("", "cfc --source=", self->core_dir,
+                             " --source=", self->test_dir,
                              " --dest=autogen --header=cfc_header", NULL);
     }
     else {
         cfc_command
             = chaz_Util_join("", cfish_prefix, dir_sep, "bin", dir_sep,
-                             "cfc --source=", self->core_dir, " --include=",
-                             cfish_prefix, dir_sep, "share", dir_sep,
-                             "clownfish", dir_sep, "include",
-                             " --dest=autogen --header=cfc_header", NULL);
+                             "cfc --source=", self->core_dir, " --source=",
+                             self->test_dir, " --include=", cfish_prefix,
+                             dir_sep, "share", dir_sep, "clownfish", dir_sep,
+                             "include --dest=autogen --header=cfc_header",
+                             NULL);
     }
     chaz_MakeRule_add_command(rule, cfc_command);
 
diff --git a/go/build.go b/go/build.go
index 3fea7a0..febcf78 100644
--- a/go/build.go
+++ b/go/build.go
@@ -118,6 +118,7 @@
 func runCFC() {
 	hierarchy := cfc.NewHierarchy("autogen")
 	hierarchy.AddSourceDir("../core")
+	hierarchy.AddSourceDir("../test")
 	hierarchy.Build()
 	autogenHeader := "Auto-generated by build.go.\n"
 	coreBinding := cfc.NewBindCore(hierarchy, autogenHeader, "")
diff --git a/perl/Build.PL b/perl/Build.PL
index c37cf3f..3f4ff07 100644
--- a/perl/Build.PL
+++ b/perl/Build.PL
@@ -28,6 +28,7 @@
 my $UCD_INC_DIR      = catdir( $MODULES_DIR, qw( unicode ucd ) );
 my $UTF8PROC_SRC_DIR = catdir( $MODULES_DIR, qw( unicode utf8proc ) );
 my $CORE_SOURCE_DIR  = catdir( @BASE_PATH, 'core' );
+my $TEST_SOURCE_DIR  = catdir( @BASE_PATH, 'test' );
 my $XS_SOURCE_DIR    = 'xs';
 
 my @cf_linker_flags = Clownfish::CFC::Perl::Build->cf_linker_flags(
@@ -73,15 +74,14 @@
         $UTF8PROC_SRC_DIR,
     ],
     clownfish_params => {
-        source => [
-            $CORE_SOURCE_DIR,
-        ],
+        source => [ $CORE_SOURCE_DIR, $TEST_SOURCE_DIR ],
         modules => [
             {
                 name          => 'Lucy',
                 parcels       => [ 'Lucy', 'TestLucy' ],
                 c_source_dirs => [
                     $CORE_SOURCE_DIR,
+                    $TEST_SOURCE_DIR,
                     $XS_SOURCE_DIR,
                     $SNOWSTEM_SRC_DIR,
                     $SNOWSTOP_SRC_DIR,
diff --git a/core/Lucy/Test.c b/test/Lucy/Test.c
similarity index 100%
rename from core/Lucy/Test.c
rename to test/Lucy/Test.c
diff --git a/core/Lucy/Test.cfh b/test/Lucy/Test.cfh
similarity index 100%
rename from core/Lucy/Test.cfh
rename to test/Lucy/Test.cfh
diff --git a/core/Lucy/Test/Analysis/TestAnalyzer.c b/test/Lucy/Test/Analysis/TestAnalyzer.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestAnalyzer.c
rename to test/Lucy/Test/Analysis/TestAnalyzer.c
diff --git a/core/Lucy/Test/Analysis/TestAnalyzer.cfh b/test/Lucy/Test/Analysis/TestAnalyzer.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestAnalyzer.cfh
rename to test/Lucy/Test/Analysis/TestAnalyzer.cfh
diff --git a/core/Lucy/Test/Analysis/TestCaseFolder.c b/test/Lucy/Test/Analysis/TestCaseFolder.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestCaseFolder.c
rename to test/Lucy/Test/Analysis/TestCaseFolder.c
diff --git a/core/Lucy/Test/Analysis/TestCaseFolder.cfh b/test/Lucy/Test/Analysis/TestCaseFolder.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestCaseFolder.cfh
rename to test/Lucy/Test/Analysis/TestCaseFolder.cfh
diff --git a/core/Lucy/Test/Analysis/TestNormalizer.c b/test/Lucy/Test/Analysis/TestNormalizer.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestNormalizer.c
rename to test/Lucy/Test/Analysis/TestNormalizer.c
diff --git a/core/Lucy/Test/Analysis/TestNormalizer.cfh b/test/Lucy/Test/Analysis/TestNormalizer.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestNormalizer.cfh
rename to test/Lucy/Test/Analysis/TestNormalizer.cfh
diff --git a/core/Lucy/Test/Analysis/TestPolyAnalyzer.c b/test/Lucy/Test/Analysis/TestPolyAnalyzer.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestPolyAnalyzer.c
rename to test/Lucy/Test/Analysis/TestPolyAnalyzer.c
diff --git a/core/Lucy/Test/Analysis/TestPolyAnalyzer.cfh b/test/Lucy/Test/Analysis/TestPolyAnalyzer.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestPolyAnalyzer.cfh
rename to test/Lucy/Test/Analysis/TestPolyAnalyzer.cfh
diff --git a/core/Lucy/Test/Analysis/TestRegexTokenizer.c b/test/Lucy/Test/Analysis/TestRegexTokenizer.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestRegexTokenizer.c
rename to test/Lucy/Test/Analysis/TestRegexTokenizer.c
diff --git a/core/Lucy/Test/Analysis/TestRegexTokenizer.cfh b/test/Lucy/Test/Analysis/TestRegexTokenizer.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestRegexTokenizer.cfh
rename to test/Lucy/Test/Analysis/TestRegexTokenizer.cfh
diff --git a/core/Lucy/Test/Analysis/TestSnowballStemmer.c b/test/Lucy/Test/Analysis/TestSnowballStemmer.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestSnowballStemmer.c
rename to test/Lucy/Test/Analysis/TestSnowballStemmer.c
diff --git a/core/Lucy/Test/Analysis/TestSnowballStemmer.cfh b/test/Lucy/Test/Analysis/TestSnowballStemmer.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestSnowballStemmer.cfh
rename to test/Lucy/Test/Analysis/TestSnowballStemmer.cfh
diff --git a/core/Lucy/Test/Analysis/TestSnowballStopFilter.c b/test/Lucy/Test/Analysis/TestSnowballStopFilter.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestSnowballStopFilter.c
rename to test/Lucy/Test/Analysis/TestSnowballStopFilter.c
diff --git a/core/Lucy/Test/Analysis/TestSnowballStopFilter.cfh b/test/Lucy/Test/Analysis/TestSnowballStopFilter.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestSnowballStopFilter.cfh
rename to test/Lucy/Test/Analysis/TestSnowballStopFilter.cfh
diff --git a/core/Lucy/Test/Analysis/TestStandardTokenizer.c b/test/Lucy/Test/Analysis/TestStandardTokenizer.c
similarity index 100%
rename from core/Lucy/Test/Analysis/TestStandardTokenizer.c
rename to test/Lucy/Test/Analysis/TestStandardTokenizer.c
diff --git a/core/Lucy/Test/Analysis/TestStandardTokenizer.cfh b/test/Lucy/Test/Analysis/TestStandardTokenizer.cfh
similarity index 100%
rename from core/Lucy/Test/Analysis/TestStandardTokenizer.cfh
rename to test/Lucy/Test/Analysis/TestStandardTokenizer.cfh
diff --git a/core/Lucy/Test/Highlight/TestHeatMap.c b/test/Lucy/Test/Highlight/TestHeatMap.c
similarity index 100%
rename from core/Lucy/Test/Highlight/TestHeatMap.c
rename to test/Lucy/Test/Highlight/TestHeatMap.c
diff --git a/core/Lucy/Test/Highlight/TestHeatMap.cfh b/test/Lucy/Test/Highlight/TestHeatMap.cfh
similarity index 100%
rename from core/Lucy/Test/Highlight/TestHeatMap.cfh
rename to test/Lucy/Test/Highlight/TestHeatMap.cfh
diff --git a/core/Lucy/Test/Highlight/TestHighlighter.c b/test/Lucy/Test/Highlight/TestHighlighter.c
similarity index 100%
rename from core/Lucy/Test/Highlight/TestHighlighter.c
rename to test/Lucy/Test/Highlight/TestHighlighter.c
diff --git a/core/Lucy/Test/Highlight/TestHighlighter.cfh b/test/Lucy/Test/Highlight/TestHighlighter.cfh
similarity index 100%
rename from core/Lucy/Test/Highlight/TestHighlighter.cfh
rename to test/Lucy/Test/Highlight/TestHighlighter.cfh
diff --git a/core/Lucy/Test/Index/TestDocWriter.c b/test/Lucy/Test/Index/TestDocWriter.c
similarity index 100%
rename from core/Lucy/Test/Index/TestDocWriter.c
rename to test/Lucy/Test/Index/TestDocWriter.c
diff --git a/core/Lucy/Test/Index/TestDocWriter.cfh b/test/Lucy/Test/Index/TestDocWriter.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestDocWriter.cfh
rename to test/Lucy/Test/Index/TestDocWriter.cfh
diff --git a/core/Lucy/Test/Index/TestHighlightWriter.c b/test/Lucy/Test/Index/TestHighlightWriter.c
similarity index 100%
rename from core/Lucy/Test/Index/TestHighlightWriter.c
rename to test/Lucy/Test/Index/TestHighlightWriter.c
diff --git a/core/Lucy/Test/Index/TestHighlightWriter.cfh b/test/Lucy/Test/Index/TestHighlightWriter.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestHighlightWriter.cfh
rename to test/Lucy/Test/Index/TestHighlightWriter.cfh
diff --git a/core/Lucy/Test/Index/TestIndexManager.c b/test/Lucy/Test/Index/TestIndexManager.c
similarity index 100%
rename from core/Lucy/Test/Index/TestIndexManager.c
rename to test/Lucy/Test/Index/TestIndexManager.c
diff --git a/core/Lucy/Test/Index/TestIndexManager.cfh b/test/Lucy/Test/Index/TestIndexManager.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestIndexManager.cfh
rename to test/Lucy/Test/Index/TestIndexManager.cfh
diff --git a/core/Lucy/Test/Index/TestPolyReader.c b/test/Lucy/Test/Index/TestPolyReader.c
similarity index 100%
rename from core/Lucy/Test/Index/TestPolyReader.c
rename to test/Lucy/Test/Index/TestPolyReader.c
diff --git a/core/Lucy/Test/Index/TestPolyReader.cfh b/test/Lucy/Test/Index/TestPolyReader.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestPolyReader.cfh
rename to test/Lucy/Test/Index/TestPolyReader.cfh
diff --git a/core/Lucy/Test/Index/TestPostingListWriter.c b/test/Lucy/Test/Index/TestPostingListWriter.c
similarity index 100%
rename from core/Lucy/Test/Index/TestPostingListWriter.c
rename to test/Lucy/Test/Index/TestPostingListWriter.c
diff --git a/core/Lucy/Test/Index/TestPostingListWriter.cfh b/test/Lucy/Test/Index/TestPostingListWriter.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestPostingListWriter.cfh
rename to test/Lucy/Test/Index/TestPostingListWriter.cfh
diff --git a/core/Lucy/Test/Index/TestSegWriter.c b/test/Lucy/Test/Index/TestSegWriter.c
similarity index 100%
rename from core/Lucy/Test/Index/TestSegWriter.c
rename to test/Lucy/Test/Index/TestSegWriter.c
diff --git a/core/Lucy/Test/Index/TestSegWriter.cfh b/test/Lucy/Test/Index/TestSegWriter.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestSegWriter.cfh
rename to test/Lucy/Test/Index/TestSegWriter.cfh
diff --git a/core/Lucy/Test/Index/TestSegment.c b/test/Lucy/Test/Index/TestSegment.c
similarity index 100%
rename from core/Lucy/Test/Index/TestSegment.c
rename to test/Lucy/Test/Index/TestSegment.c
diff --git a/core/Lucy/Test/Index/TestSegment.cfh b/test/Lucy/Test/Index/TestSegment.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestSegment.cfh
rename to test/Lucy/Test/Index/TestSegment.cfh
diff --git a/core/Lucy/Test/Index/TestSnapshot.c b/test/Lucy/Test/Index/TestSnapshot.c
similarity index 100%
rename from core/Lucy/Test/Index/TestSnapshot.c
rename to test/Lucy/Test/Index/TestSnapshot.c
diff --git a/core/Lucy/Test/Index/TestSnapshot.cfh b/test/Lucy/Test/Index/TestSnapshot.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestSnapshot.cfh
rename to test/Lucy/Test/Index/TestSnapshot.cfh
diff --git a/core/Lucy/Test/Index/TestSortWriter.c b/test/Lucy/Test/Index/TestSortWriter.c
similarity index 100%
rename from core/Lucy/Test/Index/TestSortWriter.c
rename to test/Lucy/Test/Index/TestSortWriter.c
diff --git a/core/Lucy/Test/Index/TestSortWriter.cfh b/test/Lucy/Test/Index/TestSortWriter.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestSortWriter.cfh
rename to test/Lucy/Test/Index/TestSortWriter.cfh
diff --git a/core/Lucy/Test/Index/TestTermInfo.c b/test/Lucy/Test/Index/TestTermInfo.c
similarity index 100%
rename from core/Lucy/Test/Index/TestTermInfo.c
rename to test/Lucy/Test/Index/TestTermInfo.c
diff --git a/core/Lucy/Test/Index/TestTermInfo.cfh b/test/Lucy/Test/Index/TestTermInfo.cfh
similarity index 100%
rename from core/Lucy/Test/Index/TestTermInfo.cfh
rename to test/Lucy/Test/Index/TestTermInfo.cfh
diff --git a/core/Lucy/Test/Object/TestBitVector.c b/test/Lucy/Test/Object/TestBitVector.c
similarity index 100%
rename from core/Lucy/Test/Object/TestBitVector.c
rename to test/Lucy/Test/Object/TestBitVector.c
diff --git a/core/Lucy/Test/Object/TestBitVector.cfh b/test/Lucy/Test/Object/TestBitVector.cfh
similarity index 100%
rename from core/Lucy/Test/Object/TestBitVector.cfh
rename to test/Lucy/Test/Object/TestBitVector.cfh
diff --git a/core/Lucy/Test/Object/TestI32Array.c b/test/Lucy/Test/Object/TestI32Array.c
similarity index 100%
rename from core/Lucy/Test/Object/TestI32Array.c
rename to test/Lucy/Test/Object/TestI32Array.c
diff --git a/core/Lucy/Test/Object/TestI32Array.cfh b/test/Lucy/Test/Object/TestI32Array.cfh
similarity index 100%
rename from core/Lucy/Test/Object/TestI32Array.cfh
rename to test/Lucy/Test/Object/TestI32Array.cfh
diff --git a/core/Lucy/Test/Plan/TestArchitecture.c b/test/Lucy/Test/Plan/TestArchitecture.c
similarity index 100%
rename from core/Lucy/Test/Plan/TestArchitecture.c
rename to test/Lucy/Test/Plan/TestArchitecture.c
diff --git a/core/Lucy/Test/Plan/TestArchitecture.cfh b/test/Lucy/Test/Plan/TestArchitecture.cfh
similarity index 100%
rename from core/Lucy/Test/Plan/TestArchitecture.cfh
rename to test/Lucy/Test/Plan/TestArchitecture.cfh
diff --git a/core/Lucy/Test/Plan/TestBlobType.c b/test/Lucy/Test/Plan/TestBlobType.c
similarity index 100%
rename from core/Lucy/Test/Plan/TestBlobType.c
rename to test/Lucy/Test/Plan/TestBlobType.c
diff --git a/core/Lucy/Test/Plan/TestBlobType.cfh b/test/Lucy/Test/Plan/TestBlobType.cfh
similarity index 100%
rename from core/Lucy/Test/Plan/TestBlobType.cfh
rename to test/Lucy/Test/Plan/TestBlobType.cfh
diff --git a/core/Lucy/Test/Plan/TestFieldMisc.c b/test/Lucy/Test/Plan/TestFieldMisc.c
similarity index 100%
rename from core/Lucy/Test/Plan/TestFieldMisc.c
rename to test/Lucy/Test/Plan/TestFieldMisc.c
diff --git a/core/Lucy/Test/Plan/TestFieldMisc.cfh b/test/Lucy/Test/Plan/TestFieldMisc.cfh
similarity index 100%
rename from core/Lucy/Test/Plan/TestFieldMisc.cfh
rename to test/Lucy/Test/Plan/TestFieldMisc.cfh
diff --git a/core/Lucy/Test/Plan/TestFieldType.c b/test/Lucy/Test/Plan/TestFieldType.c
similarity index 100%
rename from core/Lucy/Test/Plan/TestFieldType.c
rename to test/Lucy/Test/Plan/TestFieldType.c
diff --git a/core/Lucy/Test/Plan/TestFieldType.cfh b/test/Lucy/Test/Plan/TestFieldType.cfh
similarity index 100%
rename from core/Lucy/Test/Plan/TestFieldType.cfh
rename to test/Lucy/Test/Plan/TestFieldType.cfh
diff --git a/core/Lucy/Test/Plan/TestFullTextType.c b/test/Lucy/Test/Plan/TestFullTextType.c
similarity index 100%
rename from core/Lucy/Test/Plan/TestFullTextType.c
rename to test/Lucy/Test/Plan/TestFullTextType.c
diff --git a/core/Lucy/Test/Plan/TestFullTextType.cfh b/test/Lucy/Test/Plan/TestFullTextType.cfh
similarity index 100%
rename from core/Lucy/Test/Plan/TestFullTextType.cfh
rename to test/Lucy/Test/Plan/TestFullTextType.cfh
diff --git a/core/Lucy/Test/Plan/TestNumericType.c b/test/Lucy/Test/Plan/TestNumericType.c
similarity index 100%
rename from core/Lucy/Test/Plan/TestNumericType.c
rename to test/Lucy/Test/Plan/TestNumericType.c
diff --git a/core/Lucy/Test/Plan/TestNumericType.cfh b/test/Lucy/Test/Plan/TestNumericType.cfh
similarity index 100%
rename from core/Lucy/Test/Plan/TestNumericType.cfh
rename to test/Lucy/Test/Plan/TestNumericType.cfh
diff --git a/core/Lucy/Test/Search/TestLeafQuery.c b/test/Lucy/Test/Search/TestLeafQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestLeafQuery.c
rename to test/Lucy/Test/Search/TestLeafQuery.c
diff --git a/core/Lucy/Test/Search/TestLeafQuery.cfh b/test/Lucy/Test/Search/TestLeafQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestLeafQuery.cfh
rename to test/Lucy/Test/Search/TestLeafQuery.cfh
diff --git a/core/Lucy/Test/Search/TestMatchAllQuery.c b/test/Lucy/Test/Search/TestMatchAllQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestMatchAllQuery.c
rename to test/Lucy/Test/Search/TestMatchAllQuery.c
diff --git a/core/Lucy/Test/Search/TestMatchAllQuery.cfh b/test/Lucy/Test/Search/TestMatchAllQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestMatchAllQuery.cfh
rename to test/Lucy/Test/Search/TestMatchAllQuery.cfh
diff --git a/core/Lucy/Test/Search/TestNOTQuery.c b/test/Lucy/Test/Search/TestNOTQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestNOTQuery.c
rename to test/Lucy/Test/Search/TestNOTQuery.c
diff --git a/core/Lucy/Test/Search/TestNOTQuery.cfh b/test/Lucy/Test/Search/TestNOTQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestNOTQuery.cfh
rename to test/Lucy/Test/Search/TestNOTQuery.cfh
diff --git a/core/Lucy/Test/Search/TestNoMatchQuery.c b/test/Lucy/Test/Search/TestNoMatchQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestNoMatchQuery.c
rename to test/Lucy/Test/Search/TestNoMatchQuery.c
diff --git a/core/Lucy/Test/Search/TestNoMatchQuery.cfh b/test/Lucy/Test/Search/TestNoMatchQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestNoMatchQuery.cfh
rename to test/Lucy/Test/Search/TestNoMatchQuery.cfh
diff --git a/core/Lucy/Test/Search/TestPhraseQuery.c b/test/Lucy/Test/Search/TestPhraseQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestPhraseQuery.c
rename to test/Lucy/Test/Search/TestPhraseQuery.c
diff --git a/core/Lucy/Test/Search/TestPhraseQuery.cfh b/test/Lucy/Test/Search/TestPhraseQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestPhraseQuery.cfh
rename to test/Lucy/Test/Search/TestPhraseQuery.cfh
diff --git a/core/Lucy/Test/Search/TestPolyQuery.c b/test/Lucy/Test/Search/TestPolyQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestPolyQuery.c
rename to test/Lucy/Test/Search/TestPolyQuery.c
diff --git a/core/Lucy/Test/Search/TestPolyQuery.cfh b/test/Lucy/Test/Search/TestPolyQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestPolyQuery.cfh
rename to test/Lucy/Test/Search/TestPolyQuery.cfh
diff --git a/core/Lucy/Test/Search/TestQueryParser.c b/test/Lucy/Test/Search/TestQueryParser.c
similarity index 100%
rename from core/Lucy/Test/Search/TestQueryParser.c
rename to test/Lucy/Test/Search/TestQueryParser.c
diff --git a/core/Lucy/Test/Search/TestQueryParser.cfh b/test/Lucy/Test/Search/TestQueryParser.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestQueryParser.cfh
rename to test/Lucy/Test/Search/TestQueryParser.cfh
diff --git a/core/Lucy/Test/Search/TestQueryParserLogic.c b/test/Lucy/Test/Search/TestQueryParserLogic.c
similarity index 100%
rename from core/Lucy/Test/Search/TestQueryParserLogic.c
rename to test/Lucy/Test/Search/TestQueryParserLogic.c
diff --git a/core/Lucy/Test/Search/TestQueryParserLogic.cfh b/test/Lucy/Test/Search/TestQueryParserLogic.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestQueryParserLogic.cfh
rename to test/Lucy/Test/Search/TestQueryParserLogic.cfh
diff --git a/core/Lucy/Test/Search/TestQueryParserSyntax.c b/test/Lucy/Test/Search/TestQueryParserSyntax.c
similarity index 100%
rename from core/Lucy/Test/Search/TestQueryParserSyntax.c
rename to test/Lucy/Test/Search/TestQueryParserSyntax.c
diff --git a/core/Lucy/Test/Search/TestQueryParserSyntax.cfh b/test/Lucy/Test/Search/TestQueryParserSyntax.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestQueryParserSyntax.cfh
rename to test/Lucy/Test/Search/TestQueryParserSyntax.cfh
diff --git a/core/Lucy/Test/Search/TestRangeQuery.c b/test/Lucy/Test/Search/TestRangeQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestRangeQuery.c
rename to test/Lucy/Test/Search/TestRangeQuery.c
diff --git a/core/Lucy/Test/Search/TestRangeQuery.cfh b/test/Lucy/Test/Search/TestRangeQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestRangeQuery.cfh
rename to test/Lucy/Test/Search/TestRangeQuery.cfh
diff --git a/core/Lucy/Test/Search/TestReqOptQuery.c b/test/Lucy/Test/Search/TestReqOptQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestReqOptQuery.c
rename to test/Lucy/Test/Search/TestReqOptQuery.c
diff --git a/core/Lucy/Test/Search/TestReqOptQuery.cfh b/test/Lucy/Test/Search/TestReqOptQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestReqOptQuery.cfh
rename to test/Lucy/Test/Search/TestReqOptQuery.cfh
diff --git a/core/Lucy/Test/Search/TestSeriesMatcher.c b/test/Lucy/Test/Search/TestSeriesMatcher.c
similarity index 100%
rename from core/Lucy/Test/Search/TestSeriesMatcher.c
rename to test/Lucy/Test/Search/TestSeriesMatcher.c
diff --git a/core/Lucy/Test/Search/TestSeriesMatcher.cfh b/test/Lucy/Test/Search/TestSeriesMatcher.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestSeriesMatcher.cfh
rename to test/Lucy/Test/Search/TestSeriesMatcher.cfh
diff --git a/core/Lucy/Test/Search/TestSortSpec.c b/test/Lucy/Test/Search/TestSortSpec.c
similarity index 100%
rename from core/Lucy/Test/Search/TestSortSpec.c
rename to test/Lucy/Test/Search/TestSortSpec.c
diff --git a/core/Lucy/Test/Search/TestSortSpec.cfh b/test/Lucy/Test/Search/TestSortSpec.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestSortSpec.cfh
rename to test/Lucy/Test/Search/TestSortSpec.cfh
diff --git a/core/Lucy/Test/Search/TestSpan.c b/test/Lucy/Test/Search/TestSpan.c
similarity index 100%
rename from core/Lucy/Test/Search/TestSpan.c
rename to test/Lucy/Test/Search/TestSpan.c
diff --git a/core/Lucy/Test/Search/TestSpan.cfh b/test/Lucy/Test/Search/TestSpan.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestSpan.cfh
rename to test/Lucy/Test/Search/TestSpan.cfh
diff --git a/core/Lucy/Test/Search/TestTermQuery.c b/test/Lucy/Test/Search/TestTermQuery.c
similarity index 100%
rename from core/Lucy/Test/Search/TestTermQuery.c
rename to test/Lucy/Test/Search/TestTermQuery.c
diff --git a/core/Lucy/Test/Search/TestTermQuery.cfh b/test/Lucy/Test/Search/TestTermQuery.cfh
similarity index 100%
rename from core/Lucy/Test/Search/TestTermQuery.cfh
rename to test/Lucy/Test/Search/TestTermQuery.cfh
diff --git a/core/Lucy/Test/Store/MockFileHandle.c b/test/Lucy/Test/Store/MockFileHandle.c
similarity index 100%
rename from core/Lucy/Test/Store/MockFileHandle.c
rename to test/Lucy/Test/Store/MockFileHandle.c
diff --git a/core/Lucy/Test/Store/MockFileHandle.cfh b/test/Lucy/Test/Store/MockFileHandle.cfh
similarity index 100%
rename from core/Lucy/Test/Store/MockFileHandle.cfh
rename to test/Lucy/Test/Store/MockFileHandle.cfh
diff --git a/core/Lucy/Test/Store/TestCompoundFileReader.c b/test/Lucy/Test/Store/TestCompoundFileReader.c
similarity index 100%
rename from core/Lucy/Test/Store/TestCompoundFileReader.c
rename to test/Lucy/Test/Store/TestCompoundFileReader.c
diff --git a/core/Lucy/Test/Store/TestCompoundFileReader.cfh b/test/Lucy/Test/Store/TestCompoundFileReader.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestCompoundFileReader.cfh
rename to test/Lucy/Test/Store/TestCompoundFileReader.cfh
diff --git a/core/Lucy/Test/Store/TestCompoundFileWriter.c b/test/Lucy/Test/Store/TestCompoundFileWriter.c
similarity index 100%
rename from core/Lucy/Test/Store/TestCompoundFileWriter.c
rename to test/Lucy/Test/Store/TestCompoundFileWriter.c
diff --git a/core/Lucy/Test/Store/TestCompoundFileWriter.cfh b/test/Lucy/Test/Store/TestCompoundFileWriter.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestCompoundFileWriter.cfh
rename to test/Lucy/Test/Store/TestCompoundFileWriter.cfh
diff --git a/core/Lucy/Test/Store/TestFSDirHandle.c b/test/Lucy/Test/Store/TestFSDirHandle.c
similarity index 100%
rename from core/Lucy/Test/Store/TestFSDirHandle.c
rename to test/Lucy/Test/Store/TestFSDirHandle.c
diff --git a/core/Lucy/Test/Store/TestFSDirHandle.cfh b/test/Lucy/Test/Store/TestFSDirHandle.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestFSDirHandle.cfh
rename to test/Lucy/Test/Store/TestFSDirHandle.cfh
diff --git a/core/Lucy/Test/Store/TestFSFileHandle.c b/test/Lucy/Test/Store/TestFSFileHandle.c
similarity index 100%
rename from core/Lucy/Test/Store/TestFSFileHandle.c
rename to test/Lucy/Test/Store/TestFSFileHandle.c
diff --git a/core/Lucy/Test/Store/TestFSFileHandle.cfh b/test/Lucy/Test/Store/TestFSFileHandle.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestFSFileHandle.cfh
rename to test/Lucy/Test/Store/TestFSFileHandle.cfh
diff --git a/core/Lucy/Test/Store/TestFSFolder.c b/test/Lucy/Test/Store/TestFSFolder.c
similarity index 100%
rename from core/Lucy/Test/Store/TestFSFolder.c
rename to test/Lucy/Test/Store/TestFSFolder.c
diff --git a/core/Lucy/Test/Store/TestFSFolder.cfh b/test/Lucy/Test/Store/TestFSFolder.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestFSFolder.cfh
rename to test/Lucy/Test/Store/TestFSFolder.cfh
diff --git a/core/Lucy/Test/Store/TestFileHandle.c b/test/Lucy/Test/Store/TestFileHandle.c
similarity index 100%
rename from core/Lucy/Test/Store/TestFileHandle.c
rename to test/Lucy/Test/Store/TestFileHandle.c
diff --git a/core/Lucy/Test/Store/TestFileHandle.cfh b/test/Lucy/Test/Store/TestFileHandle.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestFileHandle.cfh
rename to test/Lucy/Test/Store/TestFileHandle.cfh
diff --git a/core/Lucy/Test/Store/TestFolder.c b/test/Lucy/Test/Store/TestFolder.c
similarity index 100%
rename from core/Lucy/Test/Store/TestFolder.c
rename to test/Lucy/Test/Store/TestFolder.c
diff --git a/core/Lucy/Test/Store/TestFolder.cfh b/test/Lucy/Test/Store/TestFolder.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestFolder.cfh
rename to test/Lucy/Test/Store/TestFolder.cfh
diff --git a/core/Lucy/Test/Store/TestFolderCommon.c b/test/Lucy/Test/Store/TestFolderCommon.c
similarity index 100%
rename from core/Lucy/Test/Store/TestFolderCommon.c
rename to test/Lucy/Test/Store/TestFolderCommon.c
diff --git a/core/Lucy/Test/Store/TestFolderCommon.cfh b/test/Lucy/Test/Store/TestFolderCommon.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestFolderCommon.cfh
rename to test/Lucy/Test/Store/TestFolderCommon.cfh
diff --git a/core/Lucy/Test/Store/TestIOChunks.c b/test/Lucy/Test/Store/TestIOChunks.c
similarity index 100%
rename from core/Lucy/Test/Store/TestIOChunks.c
rename to test/Lucy/Test/Store/TestIOChunks.c
diff --git a/core/Lucy/Test/Store/TestIOChunks.cfh b/test/Lucy/Test/Store/TestIOChunks.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestIOChunks.cfh
rename to test/Lucy/Test/Store/TestIOChunks.cfh
diff --git a/core/Lucy/Test/Store/TestIOPrimitives.c b/test/Lucy/Test/Store/TestIOPrimitives.c
similarity index 100%
rename from core/Lucy/Test/Store/TestIOPrimitives.c
rename to test/Lucy/Test/Store/TestIOPrimitives.c
diff --git a/core/Lucy/Test/Store/TestIOPrimitives.cfh b/test/Lucy/Test/Store/TestIOPrimitives.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestIOPrimitives.cfh
rename to test/Lucy/Test/Store/TestIOPrimitives.cfh
diff --git a/core/Lucy/Test/Store/TestInStream.c b/test/Lucy/Test/Store/TestInStream.c
similarity index 100%
rename from core/Lucy/Test/Store/TestInStream.c
rename to test/Lucy/Test/Store/TestInStream.c
diff --git a/core/Lucy/Test/Store/TestInStream.cfh b/test/Lucy/Test/Store/TestInStream.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestInStream.cfh
rename to test/Lucy/Test/Store/TestInStream.cfh
diff --git a/core/Lucy/Test/Store/TestRAMDirHandle.c b/test/Lucy/Test/Store/TestRAMDirHandle.c
similarity index 100%
rename from core/Lucy/Test/Store/TestRAMDirHandle.c
rename to test/Lucy/Test/Store/TestRAMDirHandle.c
diff --git a/core/Lucy/Test/Store/TestRAMDirHandle.cfh b/test/Lucy/Test/Store/TestRAMDirHandle.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestRAMDirHandle.cfh
rename to test/Lucy/Test/Store/TestRAMDirHandle.cfh
diff --git a/core/Lucy/Test/Store/TestRAMFileHandle.c b/test/Lucy/Test/Store/TestRAMFileHandle.c
similarity index 100%
rename from core/Lucy/Test/Store/TestRAMFileHandle.c
rename to test/Lucy/Test/Store/TestRAMFileHandle.c
diff --git a/core/Lucy/Test/Store/TestRAMFileHandle.cfh b/test/Lucy/Test/Store/TestRAMFileHandle.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestRAMFileHandle.cfh
rename to test/Lucy/Test/Store/TestRAMFileHandle.cfh
diff --git a/core/Lucy/Test/Store/TestRAMFolder.c b/test/Lucy/Test/Store/TestRAMFolder.c
similarity index 100%
rename from core/Lucy/Test/Store/TestRAMFolder.c
rename to test/Lucy/Test/Store/TestRAMFolder.c
diff --git a/core/Lucy/Test/Store/TestRAMFolder.cfh b/test/Lucy/Test/Store/TestRAMFolder.cfh
similarity index 100%
rename from core/Lucy/Test/Store/TestRAMFolder.cfh
rename to test/Lucy/Test/Store/TestRAMFolder.cfh
diff --git a/core/Lucy/Test/TestSchema.c b/test/Lucy/Test/TestSchema.c
similarity index 100%
rename from core/Lucy/Test/TestSchema.c
rename to test/Lucy/Test/TestSchema.c
diff --git a/core/Lucy/Test/TestSchema.cfh b/test/Lucy/Test/TestSchema.cfh
similarity index 100%
rename from core/Lucy/Test/TestSchema.cfh
rename to test/Lucy/Test/TestSchema.cfh
diff --git a/core/Lucy/Test/TestSimple.c b/test/Lucy/Test/TestSimple.c
similarity index 100%
rename from core/Lucy/Test/TestSimple.c
rename to test/Lucy/Test/TestSimple.c
diff --git a/core/Lucy/Test/TestSimple.cfh b/test/Lucy/Test/TestSimple.cfh
similarity index 100%
rename from core/Lucy/Test/TestSimple.cfh
rename to test/Lucy/Test/TestSimple.cfh
diff --git a/core/Lucy/Test/TestUtils.c b/test/Lucy/Test/TestUtils.c
similarity index 100%
rename from core/Lucy/Test/TestUtils.c
rename to test/Lucy/Test/TestUtils.c
diff --git a/core/Lucy/Test/TestUtils.cfh b/test/Lucy/Test/TestUtils.cfh
similarity index 100%
rename from core/Lucy/Test/TestUtils.cfh
rename to test/Lucy/Test/TestUtils.cfh
diff --git a/core/Lucy/Test/Util/TestFreezer.c b/test/Lucy/Test/Util/TestFreezer.c
similarity index 100%
rename from core/Lucy/Test/Util/TestFreezer.c
rename to test/Lucy/Test/Util/TestFreezer.c
diff --git a/core/Lucy/Test/Util/TestFreezer.cfh b/test/Lucy/Test/Util/TestFreezer.cfh
similarity index 100%
rename from core/Lucy/Test/Util/TestFreezer.cfh
rename to test/Lucy/Test/Util/TestFreezer.cfh
diff --git a/core/Lucy/Test/Util/TestIndexFileNames.c b/test/Lucy/Test/Util/TestIndexFileNames.c
similarity index 100%
rename from core/Lucy/Test/Util/TestIndexFileNames.c
rename to test/Lucy/Test/Util/TestIndexFileNames.c
diff --git a/core/Lucy/Test/Util/TestIndexFileNames.cfh b/test/Lucy/Test/Util/TestIndexFileNames.cfh
similarity index 100%
rename from core/Lucy/Test/Util/TestIndexFileNames.cfh
rename to test/Lucy/Test/Util/TestIndexFileNames.cfh
diff --git a/core/Lucy/Test/Util/TestJson.c b/test/Lucy/Test/Util/TestJson.c
similarity index 100%
rename from core/Lucy/Test/Util/TestJson.c
rename to test/Lucy/Test/Util/TestJson.c
diff --git a/core/Lucy/Test/Util/TestJson.cfh b/test/Lucy/Test/Util/TestJson.cfh
similarity index 100%
rename from core/Lucy/Test/Util/TestJson.cfh
rename to test/Lucy/Test/Util/TestJson.cfh
diff --git a/core/Lucy/Test/Util/TestMemoryPool.c b/test/Lucy/Test/Util/TestMemoryPool.c
similarity index 100%
rename from core/Lucy/Test/Util/TestMemoryPool.c
rename to test/Lucy/Test/Util/TestMemoryPool.c
diff --git a/core/Lucy/Test/Util/TestMemoryPool.cfh b/test/Lucy/Test/Util/TestMemoryPool.cfh
similarity index 100%
rename from core/Lucy/Test/Util/TestMemoryPool.cfh
rename to test/Lucy/Test/Util/TestMemoryPool.cfh
diff --git a/core/Lucy/Test/Util/TestNumberUtils.c b/test/Lucy/Test/Util/TestNumberUtils.c
similarity index 100%
rename from core/Lucy/Test/Util/TestNumberUtils.c
rename to test/Lucy/Test/Util/TestNumberUtils.c
diff --git a/core/Lucy/Test/Util/TestNumberUtils.cfh b/test/Lucy/Test/Util/TestNumberUtils.cfh
similarity index 100%
rename from core/Lucy/Test/Util/TestNumberUtils.cfh
rename to test/Lucy/Test/Util/TestNumberUtils.cfh
diff --git a/core/Lucy/Test/Util/TestPriorityQueue.c b/test/Lucy/Test/Util/TestPriorityQueue.c
similarity index 100%
rename from core/Lucy/Test/Util/TestPriorityQueue.c
rename to test/Lucy/Test/Util/TestPriorityQueue.c
diff --git a/core/Lucy/Test/Util/TestPriorityQueue.cfh b/test/Lucy/Test/Util/TestPriorityQueue.cfh
similarity index 100%
rename from core/Lucy/Test/Util/TestPriorityQueue.cfh
rename to test/Lucy/Test/Util/TestPriorityQueue.cfh
diff --git a/core/Lucy/Test/Util/TestSortExternal.c b/test/Lucy/Test/Util/TestSortExternal.c
similarity index 100%
rename from core/Lucy/Test/Util/TestSortExternal.c
rename to test/Lucy/Test/Util/TestSortExternal.c
diff --git a/core/Lucy/Test/Util/TestSortExternal.cfh b/test/Lucy/Test/Util/TestSortExternal.cfh
similarity index 100%
rename from core/Lucy/Test/Util/TestSortExternal.cfh
rename to test/Lucy/Test/Util/TestSortExternal.cfh
diff --git a/core/TestLucy.c b/test/TestLucy.c
similarity index 100%
rename from core/TestLucy.c
rename to test/TestLucy.c
diff --git a/core/TestLucy.cfp b/test/TestLucy.cfp
similarity index 100%
rename from core/TestLucy.cfp
rename to test/TestLucy.cfp