Brian Schaffner
Schaffner is a great teacher, but his class is not easy. His tests are difficult, but he does provide a list of concepts to study before every test. There's a fair amount of textbook reading.