SWORD25: Fix regression in persistence code

The regression was introduced by commit e6ba26ff0d which wrote
coordinates of a rect as unsigned int when they were before written
as signed int. Since the load code was not modified it still expected
signed int. They are now again written as signed int. Any gamed saved
between commit e6ba26ff0d and this commit will therefore be corrupted.
SWORD25: Fix possible error in sound engine when loading a savegame

The error occurred when the save game was saved early in the game
before all the sound handles had been used. The unused handles only had
the handle type initialised (as kFreeHandle) so all the other fields had
random values. After loading the game the sound engine could erroneously
try to play one of these sound handle resulting in an error.