add off depend undpend isRegistered isFired and isStandby methods
support callback invoke count
unit test