Refined can_resign_leadership to make membership updating more extensible and to allow leaders in one-leader groups to update memberships properly - closes #302