Changed injection to inject function;
Returning an object that can't be used anywhere but the initializer function is weird.