Fix streams timeout & hangup behavior + ensure python2.6 compat

Here are thare the changes to fix the misbehavior of the timeout in case of low tweets to catch Twitter's keepalive signals thanks to the select.selct originally added in #178 and still problematix as pointed out by @ksecrist in #202

I also generalized the hangup to all cases since there is no reason to stay in infinite loop after a hangup in non-blocking mode. 

And to make things easier and avoid merging issues, I adapted the refacto and fixed python2.6 compatibility from @adonoho's #201