cleanup: use pointers to programs
cleanup: use pointers to programs

 - also use more local variables
 - bool instead of unsigned char for readibility

LeonardKoenig/fukyorbrane,LeonardKoenig/fukyorbrane