Improve curl_httpclient so it supports custom methods with payload.

Before this, no custom method (e.g. PATCH) could add a body to the CURL request.

According to the RFC-6902, PATCH is supposed to accept payload:
http://tools.ietf.org/html/rfc6902

The implementation is generic, in the sense any custom method can have a payload (before, none could).
@bdarnell  thanks a lot for all the guidance :)

This fetch overwrite was a internal hack, before the patch. Just removed it, thanks!
Regarding PATCH being a non-standard method, it was treated as custom method before at tornado/curl_httpclient.py. It now works without allow_nonstandard_methods.

I couldn't find PATCH as a HTTP standard method at the RFC though:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

Am I looking the wrong place?