Hello Jon,
You might want to take a look at dotlrn-ecommerce on OpenACS CVS HEAD.
We've been able to successfully extend the Ecommerce module along with dotlrn-catalog to produce a class registration system.
This is currently deployed on two projects at Solutiongrove.
http://www.solutiongrove.com
At present, however, I think we need to refactor the work we've done on dotlrn-ecommerce as we had to duplicate some of the code from the Ecommerce module.
Some of these duplicate code are actually pages lifted from Ecommerce itself but enhanced and "templatized". So some of these might be better off integrated for real to the ecommerce package.
Best,
Hamilton