In my 7.5 system I can see the class /BOBF/CL_LIB_DRAFT which contains the four methods to handle saving documents as drafts and then moving the draft to the active object.
How to use this in a BOPF definition escapes me. I can only presume this has not yet been released for us "customers"