mostly just added comments explaining what each program does