Fix replay desync w/ uninit'd data beyond dungeon name/proto strings

struct dungeon has fixed-size char arrays dname and proto that are only
partially initialized when they're populated by init_dungeons().  This
would sometimes trip the replay desync detector when viewing the very
first turn of a replay, even though that data doesn't matter to any of
the game's outcomes.

Note to self: check that all other fixed-length char buffers are zero'd
properly when initialized to prevent replay desync freakouts.
Commit to 32 bits for ints (vs sizeof int) in save code

n_dgns in save_dungeon() and worm segment counts in save_worm() will
always write 4 bytes for ints, rather than the platform-dependent
sizeof(int), consistent with the rest of the save code.
Properly initialize check_tutorial_command_buffer

Without this initialization, this could cause desync warnings in
tutorial mode games.

This is meant to go with commit b7b38e2a90 (tutorial mode).