Move Python exception handling code to pism_exception.i
Move IO_Type, IO_Mode, Dim_Length, and Fill_Mode to IO_Flags.hh

Rationale:

These enums are used in both pism::PIO and pism::NCFile, but I want to
be able to create Python wrappers for PIO without wrapping NCFile, and
NCFile should compile without PIO.

So, IO_Mode, IO_Type, Dim_Length, and Fill_Mode do not belong in PIO.hh
or PISMNCFile.hh and should be in a separate header.
Remove diagnostics from ShallowStressBalance.hh.
Remove diagnostics from SSA.hh.
Remove diagnostics from SIAFD.hh.
Trying to make PISM.i more organized.

It accumulated a lot of cruft and needs an cleanup.