Teaching Inductive Reasoning with Puzzles