Fixed signals to respond immediately instead of waiting for timeout.

Streams that are blocking are unable to interpret signals until a timeout occurs. When working on a connection with a higher timeout or using heartbeats to keep the connection alive, signals will not work. 

Workarounds have been mentioned which set a timeout and loop every x seconds to do a check but this is inefficient for the cpu. Using stream_select with a value of null is the easiest on resources while waiting for input. The only way that input will be caught is if the stream is not blocking.

Fixes #165
Fixes #192 
@roihq would you please try to check what the [error_get_last()](http://php.net/manual/en/function.error-get-last.php) returns, when you suppress the errors with `@` ? I think when the `stream_select` is interrupted with a pcntl signal, it should throw an exception, so the code calling the `->select()` can handle the case properly.