Allow and encourage the use of file objects instead of integer fds in IOLoop.

This fixes a problem in tests in which a closing IOLoop would os.close()
all of its file descriptors while socket objects for those fds still
existed.  When those socket objects were garbage collected, they would
close the fd a second time (by which time it may have been reassigned
to a new socket).

Due to subtleties of garbage collection this has only been observed
with the asyncio event loop in tests of curl_httpclient.
Document file descriptor change and start new release notes.
Pass the correct file object to IOLoop handler functions.
Make tornado.netutil.add_accept_handler pass a fileobj to the IOLoop.

Officially allow mixing of fds and file objects so that callers of
add_accept_handler don't need to know about this change.

As a side effect, fixes a problem with autoreload on windows.

Closes #737.
Fix a typo that snuck into the autoreload docs.
Remove some vestigial references to 2to3.
Add tornado.test.__main__ so the tests can be run with "-m tornado.test".

(This doesn't work on python 2.6)
Remove some unused imports (found by pyflakes)
removed unnecessary else statements
Pin sphinx version to 1.2 in tests.

Sphinx 1.2.1 has a bug that breaks our build:
https://bitbucket.org/birkenfeld/sphinx/pull-request/212/fix-an-exception-introduced-by/diff
Merge pull request #976 from daftshady/master

removed unnecessary else statements
Return a Future from IOStream methods.

This makes it easier to use IOStreams directly from coroutines.

Closes #953.
This is a fix to check  the argument to RequestHandler.write()
is one of the accepted types: dict, bytes or unicode and raise a TypeError otherwise
Merge pull request #979 from mike4999/simple_fix

 Fix for RequestHandler.write   to check for NoneType in argument
Add support in AsyncTestCase for detecting undecorated generators.

Fix a test that was not being run because of this issue.
Raise an error if IOLoop.start() is called while it is already running.
Improve the stack traces given for timeouts with @gen_test.
Add a benchmark for coroutine processing.
tornado.concurrent.Future is now always thread-unsafe.

This improves performance and provides more consistent semantics
(independent of the presence or absence of the concurrent.futures
package).

The parts of Tornado that accept Futures will accept both Tornado's
thread-unsafe Futures and the thread-safe concurrent.futures.Future.
Pivot tornado.gen to use Futures natively.

This improves performance of applications using @coroutine and Futures,
at the expense of some performance degradation for the older YieldPoint
interfaces.