Marc
We have used this quite a lot, Provided the workflow is written so that it is not expecting a primary business object type of a specific class then it should be ok.
You can also restrict the workflows available based on the state transitions if that is of use.
Paul