Fix http::Client::POST() on Windows.

Was using write() not send(), also was missing Host header.
Include the User-Agent header in HTTP requests.
If needed, call send() multiple times in HTTP.
Don't exit(1) on DNS resolution failure.
Allow http::Client::POST() to specify the content-type.
Merge pull request #50 from unknownbrackets/http

http::Client cleanup (mostly POST)