Fix for maybe-unitialized gfortran errors

It looks like gfortran does not like optional arrays to have an undetermined
dimension, so I changed a bunch of "dimension(:)" attributes to
"dimension(size(other_variable))". There was also a private routine in cvmix_io
that should only be called if you've compiled with netcdf that was kicking off
a "routine defined but never called" warning when I built without netcdf... so
I moved the "#ifdef _NETCDF" to include the entire routine.