Add Provider support
Add Test case for Interface with @Singleton annotation