Commiting solutions to challenges 2 to 7