CS-638 Semester Project.