I have a javascript lib, basically this is how it is structured so far:

```
var Ns = (function(){
  var that = {};

  // add stuff to 'that'

  return that;
})();

//use Ns.foo() and Ns.bar()

```

The thing is that now, I wanted the same lib to be available with `node` and `npm`. So far this is what I could come up with:

```
this.Ns = (function(){ //same as previous snippet })()

//use Ns.foo() and Ns.bar()

```

The problem is that, while this works in the browser, in node I need to do this:

```
var Ns = require('ns').Ns

```

**Problem:** I'd love to be able to do `var Ns = require('ns')` but in order to do that I have to export `this.foo` and `this.bar` which will break the browser inclusion. Ideas?