Add support for OPTIONS method

I wrote a patch to add OPTIONS as a supported HTTP method in Polipo. This
arose out of the new use for the OPTIONS method for preflighted requests
in HTTP access control (CORS), which is used when a XMLHttpRequest call
across domain boundaries in reasonably current browsers (Chrome 4+,
Firefox 3.5+, IE 10+) utilizes either

* a HTTP method other than GET, HEAD or POST
* a content type other than plain text or form data
* a custom request header.

In my example, this occurs because a script on www.domain.com tries to
query a JSON file on api.domain.com, which fails with a 501 at the moment
when the page is requested via HTTP (obviously, it works over the tunneled
connection when requested via HTTPS).

See also:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Preflighted_requests

As per the spec (RFC 7231, section 4.3.7), responses to the OPTIONS method
are not cacheable, so I added OPTIONS as an equal alternative to POST and
PUT requests (especially since OPTIONS allows for an optional request body
as well, although this is unheard of in the wild).

This patch also could be easily extended to support the DELETE method
used by some RESTful web services.
https://github.com/jech/polipo/issues/26
Update CHANGES.