Field3D volume file write (and other fixes)

Adds write support for .f3d for volumetric data.  This may not yet support all corners of f3d quite yet, but for it seems to work for basic DenseField and SparseField single-field files, so it's a good start.

Along the way:
* The small number of IBA functions that fail for volume data now notice this and issue an appropriate error message.
* oiiotool is more careful about checking for error conditions for every IBA function it calls.