Thanks go to the following people, in no particular order:

Tim [tmo], whose ideas prompted the creation of this program's predecessor
(shnlen), and whose diligent testing helped iron out the bugs in that program.

Herschel Gelman, who had the great suggestion that shnlen could check to see
whether the .wav files inside the .shn's were properly cut on sector boundaries.
He also suggested that join mode could write to stdout, so that large amounts of
data could be piped into an external program, such as an mp3 encoder.

Caleb Epstein, for sending patches and helping to debug shntool, as well as
providing documentation and binary packages.  Also, for reporting the fix mode
hang, as well as providing a set of files that helped me reproduce it.
Additionally, for suggesting that info mode could tell whether .shn files were
seekable.

Jeff Kempka, for helping me obtain unruly files to aid in figuring out a rare
bug in the 0.9x series, as well as usability suggestions.

Bill Bumgarner, for suggesting that shntool move to GNU autoconf.  I learned a
lot in the process.  :^)

Paul Mather, for reporting bugs and compilation problems on platforms on which I
currently have no access, as well as testing and verifying their respective
fixes.  Also, for reporting the m:ss.ff rounding bug, as well as providing a
detailed analysis of the problem which expedited its fix.

Mike Kelleher, for contributing toward the design of split mode, as well as
helping to test it.

Mike Vernal, for providing the impetus (and nearly the code) to support AIFF, as
well as testing it.

Scott Brown, for putting the AIFF support through the wringer, helping to iron
out the kinks.

jelly, for suggesting that join mode be able to join non-CD quality files.

Michael Dougherty, for reporting a bug where shntool would inadvertently include
extra RIFF chunks when calculating audio MD5 fingerprints.

-------

Thanks also goes to the developers of the following software, from which I have
taken both ideas and code for shntool:

xmms - shntool's WAVE header parsing algorithm was based off of the one in xmms's
       WAVE input plugin

proftpd - shntool's method for gluing modules together was adapted from the way
          proftpd handles it

sox - the WAVE_FORMAT_* defines and format_to_str() function were taken from the
      sox distribution

coreutils - the MD5 algorithm was lifted from the GNU coreutils distribution
