function showHideProgram(program) {
	if (program.shown) {
		program.handle.innerHTML = program.handle.innerHTML.replace(/Hide/g, 'Show');
		program.listing.style.display = "none";
	} else {
		program.handle.innerHTML = program.handle.innerHTML.replace(/Show/g, 'Hide');
		program.listing.style.display = "block";	
	}
	program.shown = !program.shown;
}
function initProgram(progId, handleTag, listingTag) {
	var program = document.getElementById(progId);
	var handle = program.getElementsByTagName(handleTag);
	var listing = program.getElementsByTagName(listingTag);
	program.handle = handle[0];	// set the 'control handle' element
	program.listing = listing[0];	// set the 'listing' element
	program.shown = true;	// on init, programs are visible
	program.handle.className += " program_handle";
	showHideProgram(program);
}