HDF: Add hdf::Node class

hdf::Node and hdf::Value will be used for intermediate storage in another
parser.
HDF: Remove 'const' modifier of hdf::Value::type

I did not foresee that I would need an available operator =. Darn.
HDF: Reduce code duplication in hdf_node.h