Support CommonJS module.exports.

I want to use this library on the server-side as well as the client-side. This PR contains logic to use module.exports if it’s available. It falls back to `window.NumberHelpers` so this should be compatible with the existing code today. (And the tests pass!)
You are right that the class does get wrapped in closure, but only assigned to a local variable afterwards (not `this`).

`class @MyClass` becomes:

```javascript
this.MyClass = // clusure
```

`class MyClass` becomes:

```javascript
var MyClass
MyClass = // clusure
```

However, it is still ok to remove now because you are manually adding it to window: `window.NumberHelpers = NumberHelpers`