(CFACT-17) Implement a HTTP client for EC2/GCE facts.

Implementing a simple wrapper around libcurl for performing HTTP
requests.

The HTTP client should be enough for cfacter, but more work will need to
be done to support requirements for a native agent.

EC2 and GCE facts should output an info message iff:
  - They would normally be in the output (i.e. they meet the confines)
  - USE_CURL is not defined

Including a file in the http directory without USE_CURL defined will
result in build errors, so guard the includes with an #ifdef.
I meant more pedantically:
name + ":" + value == name + ":" (when value.empty())
So this looks like it could be simplified to 'ctx.request_headers.append(name + ":" + value)'; the if and else clauses result in the same string being passed to append.