HDF5 XML Layout Definition feature

This is a new feature to allow defining and designing the internal structure of HDF5 files, produced by the NDFileHDF5 file writer plugin. The definition is done in XML which is loaded into the plugin at runtime. 

The feature is backwards compatible in the sense that:
* PV names have been preserved. New PVs has been added to support the feature.
* The default structure of the produced files is compatible with the previous structure if no XML definition is loaded.

This pull request also include another minor feature from Diamond: "LazyOpen". When this feature is enabled (by default is disabled to be backwards compatible) the creation of files is deferred until the time when the first NDArray to write actually arrive in the plugin. This avoid the requirement to initialise the plugin with a dummy image before starting write operation.

Source code, EDM and MEDM screens has been updated as well as the user documentation and release notes.