Fix compilation on Solaris 11.

The DATA_TYPE_STRING enum value is defined in their zone.h file, but
we also use it in evaluation code, so compile these functions in a
separate file that doesn't include cf3.defs.h.

Fixes issue #3472.