Extract common request/response functionality into a base class

* Both the request and response classes inherit from the base message class.
* Setters consistently return object instances.
API: Consistently name HTTP header methods

* SS_HTTPMessage->addHeader() has been renamed to setHeader().
* SS_HTTPMessage->removeHeader() has been renamed to unsetHeader().
API: Made HTTP request method names more consistent

* Renamed SS_HTTPRequest::httpMethod() to getMethod().
* Properly case method names.
API: Make request constructor args optional and remove null request
Add PSR-0 autoload definition to composer.json
API: Change Director::test() to accept request objects

Rather than accepting an argument for each request variable, a request
object is used to provide these details. For simple cases a URL can
still be used.

This means that GET variables can no longer be included in the URL, but
must be included in the request object.
API: Don't include $_FILES vars in request vars

This better emulates the behaviour of the standard PHP request
array. Also added methods to allow accessing files data.
API: Extracted routing functionality into a router class
API: Consistently named http request methods
API: Move SS_HTTPRequest::send_file() into the HTTP class
API: Change the way requests are constructed, and include server vars

* Environment variables (get, post, files and server vars) are now
  passed in as an associative array to the constructor.
* Add methods for accessing server variables on the request.
API: Make HTTP headers case insensitive
Move header extraction to the request class
Move method detection to the request class
Move the overriding of superglobals into SS_HTTPRequest->setGlobals()
API: Add basic auth methods to the request object
Update basic auth test for request global changes
NEW: Allow matching the extension as a parameter in URL rules

This is done using the format "controller/$Action.$Extension", which
will match any (or no) extension. To make the extension compulsory,
you can use "controller/$Action.$Extension!".
Always include the Composer autoloader
Add request processor reference documentation