More reorganisation and IE10 support

switched from __defineGetter___ to defineProperty