Ok I've just finished my first stab at solving this.
I'm working from one limited scenario right now, image attached to data object that's related to a page and just one image/data object.
As long as we're dealing with one image it's a has_one and the field is actually present on the data object which makes it simpler.
However even this has proven to be rather tricky. I think I can get the functionality running on pages rather quickly but I think multi upload is going to be hard. I'm not sure if defining a many_many relationship works before the object is actually created and has an ID.