AutowiredFast should be allowed to work with a pointer type as its ctor arg

This allows us to use AutowiredFast in cases where a shared pointer might not be avilable, such as early CoreContext construction and in teardown notifiers