wooo all tests filled in, factored out story_to_string so it's easier to unit test