As it stands, the script prints out the next item in the todo list, not the one just removed. Maybe it's not quite the standard expected result in this case, but I figured it'd minimize the amount of commands/work that needs to be done to manage the queue.
Of course, since it's a Gist, you're welcome to fork it ;p