The long overdue "real" version

Timeouts are currently broken, but the fun parts are usable and all the insane
parts are gone.
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Your branch is up-to-date with 'github/master'.
#
# Changes to be committed:
#	modified:   META.info
#	modified:   README.md
#	modified:   lib/Test/ClientServer.pm
#	modified:   t/01-server.t
#	modified:   t/02-simple-socket.t
#	modified:   t/03-timeout.t
#