@rmsint i removed the if getSize() == 0 here, as that is triggering an error with phpcr-odm on unpersisted documents (you may only call getSize once a document is flushed).

this leads to a ton of try catch and sanity checks all over the place. travis helped me find some issues, but i would be very glad if you could review this once again and do a follow-up PR to clean things if i miss something.