Is there an API call in 2009 SP1 to set a component to unpublished similar to objPage.SetPublishedTo?
This is where, again, Tridion is technically correct... but it takes some mind-twisting to find it.
Components are not published - component presentations are. To set a component presentation as unpublished, use the ComponentTemplate's class "SetPublishedTo" method. I can't recall the details anymore, pretty sure you need to pass something like component URI + Publication Target and you're all set.