move lab04->lab05a, separate model/controllers