implement validation and review step functionality