Steps 3 & 4

Through steps 3 and 4, including tests. Tests that go through latter
steps had to be commented out.