Honours thesis for Kevin Murray's 2013 honours project.