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!".
Add request processor reference documentation