Intel compat, SEG-Y v1 output, text in header

This is a major rewrite of the db2segy program to implement support for
the SEG-Y rev 1 standard. For the classic 1975 SEG-Y output, it attempts
to maintain compatibility with the previous program as much as feasible.
Differences are denoted below with *1975*.

*1975* All data is now written out in Big-Endian format, regardless of
the endian-ness of the host. This is a major change from the original
program, which broke spec in this regard. Note that this change may have
some effect on Seismic Unix users, but Promax users will be happier.

Added -V option to specify the output format version.

*1975* Actually output a Textual Header Block if using SEG-Y classic or
Rev 1.  Like before, no textual header is output for Seismic Unix
support. Added some routines to spit out EBCDIC for SEG-Y "classic".
SEG-Y Rev 1 will always use ASCII for the header block.

A description blurb can be placed in the first record of the text
header.  It is limited to 76 characters due to the file format. It can
be controlled either by the -d option or the text_header_description
parameter in the parameter file

If data is output in rev1, don't set non-standard trace header fields
(the PASSCAL extensions) that conflict with the Rev1 standard. This
includes ignoring the request to use a 32-bit sample counter. If the
32-bit sample counter is requested in Rev1 mode, a warning message is
output, and the request is ignored (16-bit sample counter is used).

*1975* Force fixed length trace flag to true. SEG-Y Ver 1 added a field
that allows you to specify that the traces are all fixed length. This
allows faster random access throughout the file, and is a good idea to
set. This field is in an unused block of the 1975 SEY-Y standard so it
should be safe to set it for all versions of SEG-Y. However this is a
slight change in the output format in "classic" mode.

Antelope actually records data in UTC (which has the leap second
corrections applied), not GMT. For SEG-Y REV1 we will say that our
timebasis is UTC (4) instead of GMT (2). Older versions of SEG-Y will
continue to use timebasis 2.

Added new parameter prefer_decimal_degrees which allows you to use
decimal degrees in Rev1 output. It's not on by default, but it's
probably best practice.

Converted many diagnostic fprintf calls over to elog routines.

Extended the header file with comments and byte offsets for most fields

LLVM found some code issues with default variable assignments in the
header initialization routines

Converted many fields to use defined symbolic values instead of numbers

Provide a sane default scale value when using decimal degrees and
looking in the database tables. Output a diagnostic message if we're
using a user-supplied scale factor that causes a loss of precision

Add diagnostic output for coordinate scale values depending on the
output mode

Updated example parameter file with new options, more descriptions on
usage, and added pf_revision_time

Extensively revised man page

Fixed up numerous in-line code comments. Numerous cosmetic white space
at end of line cleanups

Remove unneeded includes. The dependency on libgenloc was tenuous and
was only needed for allocating an n * m matrix. Switched to a calloc
call, which no longer requires linking against libperf (which BRTT
doesn't distribute with pre-compiled versions of Antelope contrib)

*1975* Also, ensure that we zero out the unused1 field in the Reel
header to cut down on spurious values that were present on all
architectures.