Add an option to guess the start of data for reading malformed CDS files

This is an alternate implementation based on discussions from #2227 in order to fix issue #467.

cc: @amras1 @hamogu