Added a new Puzzle model and new routes