add CRC routines for checksum generation