Request Fix

The Request::IsPost method was mistakenly not marked as static.
Request Style Fix

The static variables of the Request class were not explicitly marked public.
Request::$server

Added another static variable to the Request class -- $server.  Having a wrapper class -- Server -- just for the PHP $_SERVER superglobal doesn't make sense (especially since most of the Server functions perform tasks logically related to the current HTTP request), so I'm merging it into the Request class.

This is the first step.
GetHeaders

Added a GetHeaders static method to the Request class.

This method retrieves all HTTP headers associated with the currently-executing HTTP request and returns them wrapped in a StrictObject.
HTTP\ContentType

Added a class to parse HTTP Content-Type headers -- HTTP\ContentType.

The constructor is optionally passed a header to parse.  If none is provided it will automatically fetch the Content-Type header for the currently executing request.

A default media type and character set may also be provided to avoid spurious conditionals to coalesce nulls to a sensible default.

Updated the HTTP\Response class to use this to obtain the appropriate character set to decode the body of the response it encapsulates.
GetBody

Added the GetBody method to the Request class.

This method retrieves the body of the currently executing HTTP request with its character set properly converted.
Platform

Added the Platform class, which will contain methods for discovering and manipulating the underlying platform -- whether PHP itself or the operating system.

Currently the only method is the IsWindows method, which determines if the operating system the current script is running on is Microsoft Windows.
Path

Added the Path class, which will contain utilities for manipulating file system paths.

Currently contains the Join method, which joins an arbitrary number of path components into a valid file system path.
Test Front-End Improvement

The test front-end -- test.php -- now searches the "tests" directory recursively.
HTTP\ContentType Unit Tests

Added 4 unit tests for the HTTP\ContentType class.
Request Unit Tests

Added 3 unit tests for the Request class.
HTTP\Request Unit Tests

Added 7 unit tests for the HTTP\Request class.

Because this class makes external HTTP requests, added a plain text file and a very simple script to which the class can make requests for testing purposes:

The request_test.txt file contains a fixed string, which can be compared to the body of the HTTP\Response object the HTTP\Request instance returns.

The request_test.php file contains a simple script which converts a fixed Unicode string to some encoding to test the HTTP\Request::GetBody method's character set detection and conversion.

In order to include request_test.php .gitignore had to be updated.
Convert Unit Tests

Added 15 unit tests for the Convert class.

There's now coverage for the boolean and DateTime methods.
Convert Documentation

Added documentation for the Convert class.