Add in Google OAuth2 support.
Fix up documentation for the class and the Sphinx reference.
Add timeout for requests in SimpleAsyncHTTPClient's queue.

The connect_timeout and request_timeout in HTTPRequest only matter when
the _HTTPConnection get created. In heavy-loadded situation requests in
SimpleAsyncHTTPClient may have already timeouted before they pop out
from queue and get actual processed. This commit adds an timeout
callback for every request appended to SimpleAsyncHTTPClient's request
queue that cannot be processed immediately.
Add a test case for async_timeout in SimpleAsyncHTTPClient.
Rename the object param in GoogleOAuth2Mixin from overwrites to extra_params.
Stop making an absolute URL for GoogleOAuth2Mixin
Remove `async_timeout` and use `connect_timeout` instead
Clean up GoogleOAuth2Mixin, fold scope and response_type into the base OAuth2Mixin
Fixed WebSocketClient connections not closing on initial connection failure
Check for the existence of sys.stderr.isatty before calling it.

Only the `write` method is guaranteed to exist on sys.stderr and sys.stdout.

Closes #920.
Disable test_subprocess on LayeredTwistedIOLoop.

This test fails occasionally in this configuration (but strangely, the
other subprocess tests work).  I haven't been able to track it down
so just disable it for now to prevent spurious travis-ci errors.
Add close method to websocket client; fix socket leaks in websocket_test.

These leaks are detected only in python 3.4 thanks to its improved
generator GC.
Initial version of asyncio/tulip-based IOLoop.

Currently always creates a new asyncio event loop instead of using
an existing one.
Split AsyncIOLoop to make it possible to use the global asyncio event loop.

AsyncIOLoop works more like Tornado's native IOLoop so it's better for
our tests, but AsyncIOMainLoop is more appropriate for most real-world
usage.
Add a tox config for the py33 backport of asyncio.

Update some old comments.
Add cython-based speedup for websocket mask function.

This optimization is currently activated only if Cython is present
when Tornado is installed.
Add more tests for the cython websocket mask function
Remvoe auto2to3 exclusion rules.

auto2to3 is no longer a part of the Tornado development process,
and the MANIFEST exclusion rule just results in scary-looking warnings
when installing.
unify web.handlers
Merge pull request #925 from mengzhuo/master

unify web.handlers