Enforce types, fix exceptions, rm dead code

This commit enforces Gather.line and Gather.datacapture integer types,
streamlines exception handling and communication between Survey and Gather
objects, and removes the most egregiously out-of-dat code from the wave
polarity code in the Survey class.

In the near future, the eave polarity methods are likely to be removed
entirely.