All logic for Challenges is in the model