Merge readbody-cancellation-6686-3: Implement cancellation for readBody.

Author: kaizhang, mithrandi
Reviewers: itamar, glyph, herrwolfe
Fixes: #6686

git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@43388 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb