Why can't this use the normal logic... the parent classes shouldn't be able to have `@Inject` constructors, so shouldn't its logic end up doing this same thing?