Added modify step events
Changed architecture a little