added most of Lab 4, not including Student Generated Code Assignments.