Stop safari from blowing up

Fixes #138 and #173 

@zackbloom @TrevorBurnham @marcneuwirth 
You might want to try using `Object.defineProperty` (if the browser supports it). Other projects have used to avoid this error: https://github.com/apache/cordova-js/commit/6c7a76fcd2f0aa60e0879d1417e1ac0ca44f2c6c