> Which raises the point, does anyone know of a way to extract > just the small caps from an OpenType font that has them?
Not sure if this is really helpful, but since I have not yet arrived in the OpenType era I use cfftot1 to convert OpenType fonts to Type 1 and then simply use different font encoding vectors to display text either with upper and lower case letters or with caps and small caps. (The conversion preserves the exact letter shapes, but you lose the fancy OpenType code that does all those funky character replacements for you, so you must do that manually.)