Working through chapter 3, not quite finished.