Make struct_out functions operate on bh's
This patch changes most the gfs2_struct_in and gfs2_struct_out functions
so that they take a bh parameter rather than a buffer. It ensures that
whenever a structure is pushed to a buffer, the buffer is marked as
modified so that it later gets written to disk. This is one step in
getting rid of the buffer lists and helps ensure data integrity. This
takes most of the guess-work out of the buffer writing: No more "rewrite
the buffer because it may or may not have been changed."
Some structures, such as rindex entries and dentry pointers, can't
operate on a bh, mostly because they use the readi/writei functions to
write the data out, but this covers the majority of gfs2 structures.
rhbz#455300