Fix level load hang on >=mingw32-gcc-4.7

Starting in gcc 4.7 "Windows mingw targets are using the -mms-bitfields
option by default." <http://gcc.gnu.org/gcc-4.7/changes.html>.  This
causes __attribute__((packed)) not to be effective on structures that
are used to express the layout of on-disk data.  In turn, that causes
piggy.c to mishandle texture loads, eventually resulting in an infinite
loop.  Add a pragma pack to force the headers to pack tightly on
Windows.
Add sanity check that DiskBitmapHeader is the right size

This would have caught the -mms-bitfields bug at build time.