A fix for IE __defineGetter__ & __defineSetter__

I did this quickly so there's a little bit of redundant code. IE9 was giving me errors, so I implemented this fix: http://web.onassar.com/blog/2011/05/30/definegetter-definesetter-in-ie9/ It should work on IE8 as well.