Legends of Tomorrow season 3 review