call hasOwnProperty on Object.prototype to avoid errors on non-standard made Object values. Resolves issue #3