Made some progress on section 3 a while ago. Committing so that I can develop on another computer.