Start with how a form is put together: the four levels from form to element, the two ways to add one to a page, and what happens when a visitor submits it. That structure settles which input and grouping to use next, and decides which of the two submission models a multi-step form can take.
Then the elements themselves: the settings every input shares, which type fits which answer, element groups, and the two static elements. Multi-step forms comes last, because page-per-step and the single-page JS model it compares are both built from the elements and groups covered before it.