add a stop function
added unsubscribe
dispatch working