-import qualified TSN.XML.Injuries as Injuries ( Listing )
-import qualified TSN.XML.InjuriesDetail as InjuriesDetail ( PlayerListing )
-import qualified TSN.XML.News as News ( Message )
-import Xml ( parse_opts )
-
-
-
-import_file :: Configuration -> FilePath -> IO Bool
+import qualified TSN.XML.Injuries as Injuries ( pickle_message )
+import qualified TSN.XML.InjuriesDetail as InjuriesDetail ( pickle_message )
+import qualified TSN.XML.News as News ( pickle_message )
+import qualified TSN.XML.Odds as Odds ( pickle_message )
+import Xml ( DtdName(..), parse_opts )
+
+
+-- | This is where most of the work happens. This function is called
+-- on every file that we would like to import. It determines which
+-- importer to use based on the DTD, attempts to process the file,
+-- and then returns whether or not it was successful. If the file
+-- was processed, 'True' is returned. Otherwise, 'False' is
+-- returned.
+--
+-- The implementation is straightforward with one exception: since
+-- we are already in arrow world with HXT, the @import_with_dtd@
+-- function is lifted to an 'Arrow' as well with 'arr'. This
+-- prevents us from having to do a bunch of unwrapping and
+-- rewrapping with the associated error checking.
+--
+import_file :: Configuration -- ^ A configuration object needed for the
+ -- 'backend' and 'connection_string'.
+
+ -> FilePath -- ^ The path of the XML file to import.
+
+ -> IO Bool -- ^ True if we processed the file, False otherwise.