[*] Tighten up parsing of Packages-arch-specific

[*] Write some hash table routines.

[*] Better support for French Connection UK'ed mirrors and
    Packages-source bogousness.

|   - If src-pkg appears first time: add it to hash
|   - If src-pkg already in hash:
|      - If version of bin-pkg equal to src-version in hash: ignore new data
|      - If version of bin-pkg equal to new one: replace version in hash
|        with new one
|     In either case, issue a warning about src-pkg
| 
| {Requires Packages-primary to be dumped into a hash table prior to
| reading of Packages-source}

[*] Improve junk.sh to check the exit code of quinn diff and do clever
    things if it fails (e.g. try another mirror)

[*] Add configure-time test for CPU_BUS_ERRORS...

[*] open_arch_specific_file() should allow zero-length Packages-arch-specific

[*] Add a linked list of binary packages for each MBS package

[*] Handle packages which are newer in secondary (?)

[*] Make Packages-arch-specific optional (?)

[*] Re-add version number comparsions optionally

[*] X information should be optional

[*] Variable (printf style) output format?

[*] Improve examples_scripts/*
  
  o Allow for ftpget & wget

[*] Documentation.

[*] Test suite.

[*] Tidy up code

  * get_blah() should be redeisgned.  It fundamentally sucks.
 
  * get_blah() should return an error code, apart from anything else
    it'll make detection of swapped arguments easier

  * Comment the code

  * Improve (rationalize) use of `debug' variable 

 (*) 

    o Implement some form of memory management for the buffers, esp
      Packages buffers. (?)
 
    o If not unlimited string length, at least reduce the fixed length
      to something reasonable and simply chop anything which doesn't
      fit. 400 Characters is OTT.

[*] Handling situations where Packages file is not to be re-read (?)
