added the ability to inject services into a component