Accessing to particle container stored in CUDS-hdf5 file 

This PR proposes a general module for accessing CUDS files stored in a hdf5 file.  This PR illustrates what was proposed on the [wiki at (CUDS_FILE)](https://publicwiki-01.fraunhofer.de/SimPhoNy-Project/index.php/CUDS_File) but this PR only includes work related to particle containers:
* Cuds_File:  module to access the CUDS-hdf5 file 
* FileParticleContainer:  a class to access a specific particle container stored in the CUDS-hdf5 file

Supporting the write and append options sound good.  However, I wonder if the read option needs to be supported. Is the motivation for multi-threading?   

If we offer the "read" option then users can have Particle Containers where they can not call update_particle (when they are working with instances of FileParticleContainer returned by a CudsFile that is read-only)  and others where they can  call update_particle (stand alone non-file instance of ParticleContainer or instances of FileParticleContainer returned by a CudsFile that was opened with write/append options).  To be honest, I am now just starting to think about this, but my first impulse is to suggest that we just support the append and write options.