Add support for 'require' option to facilitate loading of modules via `require('module')`

Exposes a module to be accessed from outside the module file using `require(file)`. Uses the filename as the exposed module name.

See [node-browserfy](https://github.com/substack/node-browserify#brequirefile-opts) documentation for more info.

if `test.js` is
```javascript
exports.test = function () {
   return "test";
}
```

**Single Files**

```javascript
gulp.task('browserify', function () {
  gulp.src(['./test.js'])
    .pipe(browserify({
        require: ['expose']
      })) 
      .pipe(gulp.dest('./modules/'));
});
```

The above code will convert `/test.js` into `/modules/test.js`. Once included on a page via a script tag, can be loaded by `require('./modules/test.js')`

**Multiple Files**

A need I was trying to satisfy was to auto name the exposed name to facilitate concatenating multiple files into a consolidated `modules.js` file. 

```javascript
gulp.task('browserify', function () {
  gulp.src(['./*.js'])
    .pipe(browserify({
        require: ['expose']
      })) 
      .pipe(concat('modules.js'))
      .pipe(gulp.dest('./'));
})
```
The resulting file should be a collection of exposed modules in `modules.js` that could be used as
```javascript
<script src="modules.js"></script>
<script> 
var test = require('test'); 
console.log(test.test());
</script>
```