add documentation that describes what each program does