Interface inheritance is not possible before PHP 5.3.9. That is an
artefact of PHP bug 43200 (https://bugs.php.net/43200).
Since the composer.json states that the PHP versions >= 5.3.0 are
supported, we have to maintain compatibility with PHP 5.3.X.
Fixes: #7
Signed-off-by: Jacob Kiers <jacob@jacobkiers.net>
In practice, there were still too many concrete classes, which makes
integration into a framework hard. To overcome this, the codebase has
been refactored to use Interfaces when a resource is needed.
All necessary Interfaces have been created, and the existing concrete
classes now implement these interfaces.
Since now only a RequestInterface is needed instead of a Request object,
it becomes easier to use the Server component with a different Request
object, such as the Symfony or Zend Framework Request objects.
This will now only need a small wrapper, instead of extending and
rewriting the existing Request object.