Object.defineProperty wrapper with nice description methods