Wrap everything in a self-invoking anonymous function

Wrap everything in a self-invoking anonymous function,
use a function declaration instead of a function expression for the `arePropertyDescriptorsSupported` function, and
cache `undefined` so it gets renamed to something shorter when compressed.
revert change to function declaration in #79
Merge pull request #79 from Daniel-Hug/patch-4

Wrap everything in a self-invoking anonymous function
Adding a failing test
Fixing Math.trunc
No dogballs
Merge pull request #80 from ljharb/fix_math_trunc

Fix math trunc