completed through most level 3 ('if appropriate'), added some todos