Proposed way of creating no-timeout tests and...

... fix for Server.Shutdown() function.
Continued removing Sleeping tests:

* incorporated @miekg suggestions on switch vs if
* for now moved reaction to stopXXX channel messages until
  after the packet is responded to avoid client timeout in
  Shutdown (causing 2 sec. hanged thread)

Still not great how the abort logic is implemented....
Added a comment about shutdown tests
Fixed client tests and removed TODO about timeouts
Changed how shutdown works...

Now stopXXX event will stop any reading on currently open
socket and terminate reading loop. No special client/server
message is required anymore.
Following up in introducing getReadTimeout()
Dealt with race condition detector warnings:

* stopped obvious race condition with replacing handler in
  ServingLargeResponses test
* lowered probability of other race conditions with test code
  while test server is yet activating
* fixed errmessage in Shutdown
Restored code when shutdown needs an exchange...

Clients sents NULL-packet to server which helps to avoid
timeout. Timeout is still possible to encounter.
Shutdown will likely report error for those cases.
Merge pull request #113 from asergeyev/master

No timeouts in tests