abstracted out recursive `guess` method
tells you answer when you fail
add mercy call for giving up
internal method conventions
tests are hard
renaming runfile