Current limitations:
@ProvidesSingletonInScope
annotation is not supported because it's not available in runtime, useprovidesSingletonInScope()
binding instead. It can be fixed in the future by monkey-patching this annoation- Superclass member injection is not supported for dependencies created using factories
- This implementation may contain bugs, do not use for production