Replaced deprecated __defineGetter__() functions

Replaced deprecated __defineGetter__() functions with ES5 compliant Object.defineProperty() functions.