How $form_state->setRebuild(); works?
You are trying to store state values into a protected variable in the class. That will not work. You will have to store state values into the form. 

So instead of using

$this-&gt;step


and other class properties to store values use

$form_state-&gt;set('step', $value);


to persist values between submissions.