Teaching genetics using hands-on models, problem solving, and inquiry-based methods