getting the statuses correct after saves, refactoring some status-related code into models