Implement "real" check for disaster.

Move the disaster logic to helper functions and implement a "real" check
for when a disaster happens.  The parameters are still set to testing
values.