File under "More than one way to skin a cat"
Here's my solution. I transposed both time fields into one column to save having to run the conversions twice, but then had to cross-tab twice at the end, so I'm not sure if it actually saved any steps.
UPDATE: Looking at everyone else's solutions there are MUCH easier ways to do this, but I guess that's why this is a learning exercise. :-)
This challenge may seem simple, but there are some tricky points, including where a class begins in the morning and ends in the afternoon, which requires the absolute value between two times.
My solutions rarely use as few tools as possible; I've found that the more tightly wound the code within a tool is the harder it is to transition the project to someone else who may or may not have the same expertise (be it more or less). I like trying to use the base tools to solve the problem, and fully admit that I don't have a complete grasp of every tool in every category, but I'm trying!