deferring_http_channel: make delay and writable_check instance variables

Having them as class variables didn't have any observable issues, but
it couldn't possibly have been correct.
deferring_http_channel: fix delay logic

The previous code was checking whether it had been self.delay seconds
since the last check, not whether it had been self.delay seconds
since we started delaying.
Lower select timeout

The various deferring classes in http.py would try to delay by 0.1
seconds when data was not yet ready.  However, since the select
timeout was 1 second, we'd end up delaying that long, instead.  This
amounted to each start or stop command taking 1 second to complete.

The comment about the minimum timeout appears to have never been
true.