in realtà quello che vuoi fare non è proprio banalissimo per com'è strutturato angularjs.
Per una cosa simile io ho risolto attraverso ui-router (un modulo di routing alternativo a quello di default ng-route) che permette di innestare diverse view (stati) una nell'altra.
Così c'è una view generale che mantiene i dati (nel controller associato) e le view interne che sono le pagine del form.