I was expecting synchronous access, in that the function arg is not a callback, but a "final step" to run. I can see how this may not be intuitive, most appearances of a function-last arg string imply a callback that may be async. So I changed the code to pass in the string name of the action to take next instead, which should avoid that confusion.

Rebased and waiting for travis on the pull request to be green, then I'll merge.