Newer, better, stronger.

Now with even more features. (that is things that should have been here
earlier, like closing socket after failing to log in)