unix: tidy up API, add unit test for Archive.list

* Remove extraneous functions from the interface (eg write_string)
* Remove the functions to 'multicast' writes to multiple file
  descriptors -- this was only used by XenServer to pipe data to
  sha1sum, which should be done in process on buffers using the
  sha1 package
* list returns Headers rather than 'tar -t' style strings

Signed-off-by: David Scott <dave.scott@eu.citrix.com>