updated dependency injection to register all types