more completed docblocks
more verbose exception
convert objects to ids recursive