Support #1 Require definitions inside a closure

Fixes Issue #1 - Require definitions inside an anonymous closure.

Will convert:
```javascript
(function() {
    function _require(...) { ... }
    ...
}) ();
```

Into:
```javascript
var __require = null;
(function() {
    function _require(...) { ... }
    __require = _require; // Make sure _require is available in a global variable
    ...
}) ();
module.exports = __require;
```

Not really elegant, but couldn't think of any other fix for now. Tested with [move.js](https://github.com/visionmedia/move.js).