Output path support

This adds support for providing a file path as `opts.output` that the bundle will be written to if provided. Also allows shortcut config by passing the output path instead of a callback, so you can now do this: `js('./entry.js', './bundle.js')`