write the data to a temporary buffer and then flush it to the HDF5 file.
this is working correctly, although it's far from optimized in any way.
responsibility for various aspects needs to be hammered out as well.
we need to "process" the egg header before writing it to disk to ensure
that we have the dataspaces and so on correctly set up before we receive
the first slice to write.
add functions for creating datasets and so on.  in all likelihood this
isn't going to work as we add more datatypes - it seems to break the
IoC to make the writer aware of the details of the typewriter.  however,
for a first stab, this is working.
add various getters and setters for parameters related to data taking.
add a WriteEggHeader function to deal with writing the egg header
on the HDF5 file.
transfer responsibility for writing the header to the actual Writer
take responsibility for writing the header to the hdf5 file.  add a slot
for writing the header to the Writer class
add the WriteEggHeader stuff
creating of dataspaces and so on happens here now.  also move some
includes around
get rid of all ROOT cruft.  take responsibility for dataspaces and
so on
no longer knows anything about the data itself.
no longer knows anything about the data.  responsibility is officially
transferred.