Now supports saving multiple steps, and updating existing steps