Removed Otto dependency and implemented custom step completed event handling