Allow ^D (EOF) to terminate the session

Or, at least, to terminate the session without printing an error.
Ok, I'll remove the return a bit later, I'm just in the habit of being explicit about where the function execution terminates.