Add a makefile
Add http convenience methods

Add methods to perform the most common http requests (get, post, put, head,
options and delete).
Use a more meaningful name for variables, fix style
Add tests for non-protocol methods in client
Start adding tests for http-client-internals
Fix failing test
Use <http-version> and <request-method> in <base-http-request>
Add a <http-request> class to manage a request at high level

The idea is to use this class to manipulate the request at an high level,
for example by the library's user, and then convert it to the more low level
representation <base-http-request> to send it to the server.
Use table macro in client tests
Use <http-request> as a base for every http method

This commit also changes the base class of <http-request> to
<raw-http-request>.
Fix Author in client tests
Change method name in http-protocol-test-suite
<http-request> now inherits from <base-http-request>
Merge pull request #24 from fracek/http-client

[Request for feedback] HTTP client changes