ENH: VerifyChecksum for buffers padded with CRC

Added new method, VerifyChecksum, to handle buffers that have
padded the inverse CRC used in verification.
ENH: Avoid separate read for CRC iff extra space

If the user has allocated extra space for a variable, avoid the
separate read for the CRC.
ENH: Use GenericIOUtilities for header checksum

Use the alternate VerifyChecksum method in GenericIOUtilities to
verify the header CRC which is padded at the end of the header
buffer.
ENH: Alloc extra space for arrays in halotracker

Allocate sufficient space for the buffer arrays where the halodata
are read in to ensure that data and CRC will be read with a single
read and eliminate the overhead of multiple small reads.