Reads the header section of a file and returns its data.
A smart pointer to the header data class, or a null pointer if the header section cannot be read.