I'm working on abstracting userforms for use with any DataObject. This is an effort to document my progress.
I have created a UserForm 'Form' ,which abstracts out some of the UserDefinedForm functions, for general use.
Specifics to get working:
Here is the branch I'm working on: https://github.com/jedateach/silverstripe-userforms/tree/134-dataobject-abstraction
FYI this work will be done in the formsondataobjects over the next couple weeks.