Don't raise connection reset errors in `set_nodelay`

If connection was reset, `request.finish()` wrongly raises socket.error instead of ignoring the error.
Fix double logging of exceptions with both @asynchronous and @coroutine.

Tornado 3.1 made the @asynchronous decorator optional when @coroutine
is used, but if it was used anyway both @asynchronous and the new code
would log any uncaught exceptions.
Merge pull request #913 from tahajahangir/patch-1

Don't raise connection reset errors in `set_nodelay`