Removes unused class
Adds class to notify to listener when delegate is executed
Removes reasoning code
Removes reasoning code
Allows disabling and enabling
Updates readme to add dependency