(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.
Semantically they may mean different things and the standard at least allows for empty values.  A web server may treat a missing header differently from a header that has no value, so if the user of this interface added a header with an empty value, I think we should sent it on if that's their intent.