Update Object.defineProperty

- bad defineProperty cannot be detected in IE8
- IE8 without HTMLElement dependency should look for Element