Support $can_be_root=false

Fixes unclecheese/silverstripe-mock-dataobjects#7

Note: All I've done is make the setting of the ParentID happen earlier. I left the write() part where it was as I assume it needs to follow the fill() call.