diff --git a/.depend b/.depend
index 2440c824ad7b3058540930a7d39feb0db317ec28..e4f3d0922161254f76592ff6ac6c5e516e5f99e9 100644
--- a/.depend
+++ b/.depend
@@ -1,5 +1,5 @@
-config.cmo :
-config.cmx :
 goaljobs.cmi :
-goaljobs.cmo : config.cmo goaljobs.cmi
-goaljobs.cmx : config.cmx goaljobs.cmi
+goaljobs.cmo : goaljobs_config.cmo goaljobs.cmi
+goaljobs.cmx : goaljobs_config.cmx goaljobs.cmi
+goaljobs_config.cmo :
+goaljobs_config.cmx :
diff --git a/.gitignore b/.gitignore
index 78fe55c79ff1833198839fc525af6eec7e125c4e..68cd58c043a33a07ddd0099d6a561f2ebc063bdf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -17,12 +17,12 @@ Makefile
 /config.h
 /config.h.in
 /config.log
-/config.ml
 /config.status
 /config.sub
 /configure
 /examples/compile-c/compile
 /examples/compile-c/program
+/goaljobs_config.ml
 /goaljobs.spec
 /goaljobs-*.tar.gz
 /install-sh
diff --git a/Makefile.am b/Makefile.am
index 53f50d306661d05c1c6c3e2ee025176ef6f72fbe..e752ae5413e1aebe61407321da24b606b8731674 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -20,21 +20,23 @@ include common-rules.mk
 ACLOCAL_AMFLAGS = -I m4
 
 EXTRA_DIST = \
-	config.ml.in \
 	COPYING \
 	goaljobs \
+	goaljobs_config.ml.in \
+	goaljobs.ml \
+	goaljobs.mli \
 	goaljobs.spec \
 	goaljobs.spec.in \
 	META.in \
 	NOTES \
+	pa_goal.ml \
 	README \
-	$(sources) \
-	pa_goal.ml
+	TODO
 
 SUBDIRS = . examples tests
 
 sources = \
-	config.ml \
+	goaljobs_config.ml \
 	goaljobs.ml \
 	goaljobs.mli
 
@@ -46,10 +48,10 @@ bin_SCRIPTS = goaljobs
 noinst_SCRIPTS = goaljobs.cma goaljobs.cmxa pa_goal.cmo
 
 # Library.
-goaljobs.cma: config.cmo goaljobs.cmo
+goaljobs.cma: goaljobs_config.cmo goaljobs.cmo
 	$(OCAMLFIND) ocamlc -a -o $@ $(OCAMLCFLAGS) $(OCAMLCPACKAGES) $^
 
-goaljobs.cmxa: config.cmx goaljobs.cmx
+goaljobs.cmxa: goaljobs_config.cmx goaljobs.cmx
 	$(OCAMLFIND) ocamlopt -a -o $@ $(OCAMLOPTFLAGS) $(OCAMLOPTPACKAGES) $^
 
 # Preprocessor for goaljobs scripts.
diff --git a/TODO b/TODO
new file mode 100644
index 0000000000000000000000000000000000000000..50b3c4ba8204a83c395f56a69cbd6bdee114e7dd
--- /dev/null
+++ b/TODO
@@ -0,0 +1,6 @@
+Enhancements to pa_goal:
+
+ - Include the goal name, source file location in the generated
+   rule so we can improve error messages.
+
+ - Implement some sort of tracing based on the above.
diff --git a/configure.ac b/configure.ac
index 34669705849c79e6e7fa7fc9c0dfa2bb754ced5a..70977958e31000611acc9d3014018a4a9a5dd737 100644
--- a/configure.ac
+++ b/configure.ac
@@ -89,7 +89,7 @@ if test "x$PERLDOC" = "x"; then
 fi
 
 AC_CONFIG_HEADERS([config.h])
-AC_CONFIG_FILES([config.ml
+AC_CONFIG_FILES([goaljobs_config.ml
                  goaljobs.spec
                  Makefile
                  META
diff --git a/goaljobs.ml b/goaljobs.ml
index c68bc31e87d361b70ad667d776e264933526de67..53db37ceeecd8066c687b0f372a3d438822690a8 100644
--- a/goaljobs.ml
+++ b/goaljobs.ml
@@ -19,6 +19,8 @@
 open Unix
 open Printf
 
+open Goaljobs_config
+
 type goal_result_t = Goal_OK | Goal_failed of string
 exception Goal_result of goal_result_t
 
@@ -168,7 +170,7 @@ let init () =
   let args = ref [] in
 
   let display_version () =
-    printf "%s %s\n" Config.package_name Config.package_version;
+    printf "%s %s\n" package_name package_version;
     exit 0
   in
 
diff --git a/config.ml.in b/goaljobs_config.ml.in
similarity index 100%
rename from config.ml.in
rename to goaljobs_config.ml.in