halo 3 ending