Split into 3 files for each part of the assignment.