Do not send gzip header for streaming calls

Twitter is moving all of its APIs towards HTTP1.1.
https://dev.twitter.com/blog/deprecating-http-1.0-streaming-api
Userstream passed already mid-november and has been borken for this lib since
On Jan 6, Twitter will apply it as weel for all the other stream methods,
meaning they probably would be all broken.

The problem was in two pieces.
First with this commit, we stop asking for gzip encoded data for streaming
calls: for the HTPP1.0 calls, this was not taken into account anyway, but with
HTTP1.1 the answer is now chunked and should therefore not caught zipped.

(First part of fix for userstream and soon all streams cf #190 #116)
Parse http1.1 chunks to find json

Chunked data sent via HTTP1.1 by Twitter is not as straight forward to read,
chunks indicating size of tweets are present no matter what, so we find the
json start in the buffer and forget the rest for now.

(Second part of correction for userstream and soon all streams. Fix #190 #116)
Respect "delimited" argument from Streaming API

Instead of trashing it as in previous commit, return the sizes of the messages
sent by the API as regular messages if requested through the normal API
argument 'delimited=length'
https://dev.twitter.com/docs/streaming-apis/parameters#delimited

(Last part of userstream and other streams fix)
Fix blockedcalls on lowtraffic stream with timeout

When running a stream with a low traffic, the current timeout logic was
hanging indefinitely without processing.
This rewritten logic seems to be working fine now with both http1.0 and 1.1
and active or low traffic.

@dkanygin: would love to get your code review on this (cf #178)
Syntax
Fix missing TwitterHTTPError in Streaming

The existing error was never reached, luckily since it was using
undefined arguments. moved it in its right place and added handling
ssl errors as TwitterHTTPError.

(Fix #136)
Use POST for all methods requiring it in specs

Added all missing methods from https://dev.twitter.com/docs/api/1.1
Also included some of the streaming methods which work with both GET
and POST but accept arguments like "track" which can quickly require
POST.

(Closes #187 #145 #188)
Keep gzip for other methods than streaming

Oups, the default for all other methods should be True, not False
Fix broken follow create/destroy in cmdline & bot

Adapt argument calls to the intended behavior

Fixes #177 #192 #126 #10
authorship