object functions can handle hasOwnProperty override

I agree, we don't have to hold the users hand but I think utility libraries should try to ensure consistency