Hopefully this will be my final commit for part 1 of the project. ;-)