Adding support for ESM compatible output
Added a new method useEsm
to the IoC container, which will wrap the output of use
inside an object, which is compatible with ESM module.
ioc.bind('App/Foo', () => {
return 'foo'
})
ioc.use('App/Foo') // 'foo'
ioc.useEsm('App/Foo') // { default: 'foo', __esModule: true }