Made LifecycleCallback optional when firing IOC lifecycle events
Refactored fireAsync to accept the bean instance as parameter