Move the code which destroys the current mood to the end of the
function so that we can still return to the old mood if something
goes awry.
To make this work, various functions need to be adjusted to no longer
refer to to afs statistics via the global current_mood pointer. Pass
a pointer to the statistics structure to those.
Also get rid of the local mood pointer variable in favor of ->m of
struct admissible_array.
Rename the function because it is public and deserves the mood_ prefix.