Use Object.defineProperty when available.

`__defineProperty__` is horrible. It creates enumerable properties.

Winston logger uses this package. When I log any string through it, I see all “color” properties and its values. Which makes error logs super.

Please release new version with this change.