Moved macfsn hackery from macmain.c to macfsmodule.c so it loads
on demand instead of at startup.
diff --git a/Mac/Modules/macfsmodule.c b/Mac/Modules/macfsmodule.c
index 15d9f30..f16cd36 100644
--- a/Mac/Modules/macfsmodule.c
+++ b/Mac/Modules/macfsmodule.c
@@ -39,6 +39,9 @@
 
 #include "getapplbycreator.h"
 
+#include "pythonresources.h"
+extern PyMac_PrefRecord PyMac_options;
+
 #ifdef USE_TOOLBOX_OBJECT_GLUE
 extern int _PyMac_GetFSSpec(PyObject *, FSSpec *);
 extern PyObject *_PyMac_BuildFSSpec(FSSpec *);
@@ -1206,6 +1209,33 @@
 	return (PyObject *)newmfssobject(v);
 }
 
+
+/*
+** Import the macfsn module, which will override the Standard File
+** calls in the macfs builtin module by Navigation Services versions,
+** if available on this machine.
+*/
+static void
+PyMac_InstallNavServicesForSF(void)
+{
+	if ( !PyMac_options.nonavservice ) {
+		PyObject *m = PyImport_ImportModule("macfsn");
+		
+		if ( m == NULL ) {
+			PySys_WriteStderr("'import macfsn' failed; ");
+			if (Py_VerboseFlag) {
+				PySys_WriteStderr("traceback:\n");
+				PyErr_Print();
+			}
+			else {
+				PySys_WriteStderr("use -v for traceback\n");
+			}
+			PyErr_Clear();
+		}
+	}
+}
+
+
 /* Initialization function for the module (*must* be called initmacfs) */
 
 void
@@ -1235,5 +1265,6 @@
 	Mfsitype.ob_type = &PyType_Type;
 	Py_INCREF(&Mfsitype);
 	PyDict_SetItemString(d, "FInfoType", (PyObject *)&Mfsitype);
-	/* XXXX Add constants here */
+
+	PyMac_InstallNavServicesForSF();
 }