This storage manager attempts to implement the 'traditional' INN storage
layout, i.e a message crossposted to alt.fan.james-brister and rec.pets.wombats
will be written as a file in
	<patharticles>/alt/fan/james-brister/nnnnn
and a symlink pointing to the above file in
	<patharticles>/rec/pets/wombats/mmmmmm
where nnnnn and mmmmmm are the article numbers that article has in each of 
those two newsgroups.  (Actually in the traditional spool form the link
could be either a symlink or a regular link).

The storage token data for a tradspool stored article is a 16-byte block.
The storage token contains two ints; the first one is a number
telling what the name of the "primary" newsgroup is for this article, the
second one telling what article number the article has in that newsgroup.
The mapping between newsgroup name and number is given by a database in
the file
	<pathspool>/ts.ng.db
; this file is a straight ASCII file listing newsgroup names and
numbers, and will be automatically generated by innd if one does not
exist already.  This database is read in automatically by any program
that uses this storage manager module, and is updated by innd whenever
a new newsgroup is encountered.  Other programs (like innfeed) check
the mod time of that database every 5 minutes to see if they need to
recheck it for any new newsgroups that might have been added.  Should
the database become corrupted, simply shutting down news, removing the
database, and doing a makehistory will recreate the database.  It
should, in principle, be possible to write a perl script to recreate
just the database from just the spool files and history files without
doing a full makehistory. 

Currently the storage manager code works, although not perhaps as fast 
as it could.   The expiration code is somewhat unwieldy; since the storage
token does not have enough space to hold all the newsgroups an article 
is posted to, when expiration is done SMCancel() has to open the article
to find out what other newsgroups the article is posted to.  Eurggh. 
Suggestions for a better scheme are welcome. 

Other problems of note: the storage manager code has no way to get to the 
'DoLinks' (-L) flag setting of innd, so currently you can't use the
"crosspost" program with tradspool.  I guess the proper thing to do would be
to make DoLinks a config option in storage.conf instead, but I haven't
done that yet. 

