Allow use of require, external and other operations that makes browserify pending

In prior to this pull request, with buffer inputs, we couldn't use `require()`, `external()` or other operations that made broserify internally pending. It is because `es.readArray()` creates a flowing-mode stream and it runs out while browserify is pending. So I implemented non-flowing-mode stream with buffer input that can wait for browserify to do pending tasks.

Now we don't need the workaround `gulp.src('./entrypoint.js', { read: false })` or `gulp.src('./entrypoint.js', { stream: true })` to use `external()` and such.