Explain how dependency injection works using Dagger or Hilt, and describe how you would manage scoped dependencies in a multi-module application.