Use shims for ES5 features. Use .hasOwnProperty() in an IE8 friendly way.