thoroughly commenting code in preparation for leaivng