Allow add_handlers() to append to existing hosts.

This change removes the restriction that all handlers for a given host
pattern be registered in a single call to add_handlers().
Merge branch 'master' into append-handlers
_get_host_handlers() now returns all host matches.

This approach has more clearly defined precedence rules than the
previous insertion-time strategy implemented in add_handlers().

It also correctly leaves pattern matching in the hands of the regular
expression evaluator as opposed to directly comparing pattern strings.
Document the deprecation of tornado.database in the 2.4 branch.
Update app engine id for HRD migration.
Upgrade appengine website to python 2.7.
Merge branch 'branch2.4'

Conflicts:
	website/sphinx/database.rst
Remove outdated warnings and config instructions from simple_httpclient.
Allow default HTTPRequest attributes to be set globally via configure.

Closes #379.
Remove redundant logging of read errors in IOStream.

The logging in read_from_fd is generally redundant with logging at
higher levels - the error would be logged again in _handle_read,
or propagated from _try_inline_read.

Closes #632.
Use AsyncHTTPClient's defaults option in AsyncHTTPSTestCase.

Fix test_non_ssl_request, which has apparently been testing the wrong
thing for some time.
Fix a memory leak in stack_context.

The old_contexts reference in StackContexts could maintain a chain of
old irrelevant contexts, so clear it once it's no longer needed.
This was mainly a problem in gen.engine, where additional contexts
would accumulate in memory (but not on the stack) for each asynchronous
operation.

Also clear the deactivate_stack_context in gen.Runner to allow
the StackContext to be garbage-collected sooner.
Fix TwitterMixin on Python 3.

Also add tests, and add get_auth_http_client method to all auth mixins.

Closes #634.

Conflicts:
	tornado/test/auth_test.py
	website/sphinx/releases/next.rst
Fix a bug with IOStream.read_until_close with a streaming_callback.

If the underlying socket was already closed the buffered data
would be passed to the final callback rather than the streaming callback.

Conflicts:
	website/sphinx/releases/next.rst
Bump version to 2.4.1, update release notes.
Merge branch 'branch2.4'

Conflicts:
	setup.py
	tornado/__init__.py
	tornado/test/auth_test.py
	website/sphinx/releases.rst
Remove now-redundant entries from next.rst, bump version to 2.4.post2.
Accept Content-Length headers in 304 responses.

Closes #639.
Add protocol kwarg to HTTPServer constructor.
ErrorHandler no longer requires XSRF tokens.

Closes #638.