Built on weeks 3 and 4 projects from java1.