working through bugs, commit includes passing tests