Teaching Higher-Order Logic Using Isabelle