My proposition is to make the assignment submission methods usable by other plugins.
There are various plugins (mostly of activity type) in which students should submit their answers. For example, we are developed the 'assignment with an individual tasks' and we had to almost copy/paste the submission methods plugins. So we are interested in utilization of the existing submission plugins, as well as community-developed.
I can suggest the way of how to do this. Just replace the 'assignment' field (which is for assign instance ID) in the 'assignsubmission_*' tables by 'cmid'.